C语言之数组

1. 一维数组

  • C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。
  • 数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量
  • 一维数组的定义
    • 类型说明符 数组名[常量表达式];
      • 注意:中括号是整型常量整型常量表达式
      • 例如:
        int a[10];
      • 表示定义了一个整型数组,数组名是a,类型为整型,总共可以存放10个元素。
      • []中只能为整型常量表达式;
      • 错误示例:
int n = 5;
int a[n];	//不合法 

一维数组的定义

  • 一维数组的访问
    数组元素可以通过数组名称加索引进行访问。元素的索引是放在方括号内,跟在数组名称的后边。例如:
int number1 = a[0];
  • 一维数组的初始化(定义 + 赋值)
1int a[3];	a[0] = 1;a[1] = 2;a[2] = 3;
   int a[3] = {1,2,3};
2int a[5] = {1,2,3};	//未赋值元素默认为0 —— {1,2,3,0,0}
//	可以减少赋值,不能多赋值
3int a[] = {1,2,3,4,5};
//	数组长度为初始化元素的个数
/*	
	错误示例
	int a[5] = {};
	int a[] = {};
*/
  • 注意
    • 可以少赋值,至少赋一个
    • 不能多赋值
    • 省略长度说明,必须赋值
  • 一维数组的应用
#include <stdio.h>
int main(int args [])
{
	int a[5] = {1,48,78,26,2},i,max;
	max = a[0];
	for(i = 1 ;i < 5; i++)
	{
		if(a[i] > max){
			max = a[i];
		}
	}
	printf("最大值为:%d",max);
	return 0;
}

2. 二维数组

  • 二维数组的定义
    类型说明符 数组名[常量表达式][常量表达式]
    例如:
    int a[3][4];
    二维数组
  • 二维数组的初始化
1int a[2][3] = {
	{1,2,3},
	{4,5,6}
};
int a[2][3] = {1,2,3,4,5,6};
2int a[2][3] = {
	{1},
	{2}
};
3int a[2][3] = {1,2,3};	//可以少赋值,不能多赋值
4int a[][3] = {1,2,3,4,5,6};	//根据元素划分,三个一行,两行三列
/*
错误示例:
int a[][] = {};
int a[2][] = {1,2,3};
int a[2][3] = {
	{1,2,3,4},
	{1,2}
};
*/
  • 注意:
    • 未赋值的元素默认为 0
    • 行``下标``可以省略
    • 列下表不能省略
    • 可以少赋值,不能多赋值
    • 没有赋值,则行列都不可省
  • 示例:
#include <stdio.h>
 
int main ()
{
   /* 一个带有 5 行 2 列的数组 */
   int a[5][2] = { {0,0}, {1,2}, {2,4}, {3,6},{4,8}};
   int i, j;
 
   /* 输出数组中每个元素的值 */
   for ( i = 0; i < 5; i++ )
   {
      for ( j = 0; j < 2; j++ )
      {
         printf("a[%d][%d] = %d\n", i,j, a[i][j] );
      }
   }
   return 0;
   }

3. 多维数组

同上,省!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你困了吗?

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值