C语言-二维数组的定义、引用

  • 定义

由行和列组成的二维表格形式元素,二维数组其实也就是矩阵

基本格式:数据类型 数组名[行长度][列长度];

行长度为二维数组行的个数,必须为常量表达式,不能为变量

列长度为二维数组每一行列的个数,必须为常量表达式,不能为变量

二维数组包含的元素的个数是:行长度*列长度,其中每个元素占据的字节数是

sizeof(数据类型),故二维数组占据的内在字节数是 行长度*列长度*sizeof(数据类型)

 

举些例子:

1.定义一个二维数组a,包含4行4列的元素,每个元素均为int类型

int a[4][4];

2. 定义二维数组name,包含5行10列元素,每个元素均为char类型

char name[5][10];

 

  • 二维数组的内存本质

在内存中为二维数组分配一块连续的内存空间,空间大小为 行长度*列长度*sizeof(数据类型)

数组元素在内存中以为主序进行存储(即先存储第一行元素,再存储第二行元素,...)

第一行第一个元素
第一行第二个元素
第二行第一个元素
第二行第二个元素

  • 引用

不能引用整个二维数组,只能引用单个数组元素,再使用数组遍历的形式引用数组的每个元素

二维数组引用基本格式:数组名[行标][列标]

行标和列标都是从0开始,最大下标为 行(列)标长度-1

数组元素可以出现在任意表达式中,和普通变量作用相同

/*把a[0][0]处的元素变成原来的2倍*/
a[0][0] *=2;  

/*给a[0][1]元素输入数据*/
scanf_s("%d",&a[0][1]);

/*输出数组a的第一行所有元素*/
for(int j=0;j<COL_LENGTH;j++){
    printf("%d",a[0][j]);
}
  • 二维数组遍历
for(i=0;i<ROW_NUMBER;i++){
    for(j=0;j<COL_NUMBER;j++){
        //a[i][j] 表示当前第i+1行第j+1列数组元素
    }
}

 

  • 1
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值