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

C Programming 专栏收录该内容
33 篇文章 2 订阅
  • 定义

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

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

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

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

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

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
    点赞
  • 0
    评论
  • 21
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值