以下内容是学习尚硅谷
11.1 二维数组的使用
11.1.1 快速入门案例
11.1.2 使用方式1:先定义在初始化
语法:类型 数组名[大小][大小];
比如:int a[2][3];
11.1.3 使用演示
二维数组在内存的存在形式,各个元素的地址是连续分布的,即在前一个元素基础上+4
c
#include <stdio.h>
#include <string.h>
#include <stdio.h>
int main(){
//a[4][6]:表示一个4行6列的二维数组
int a[4][6];//没有初始化,则是分配的内存垃圾值
int i,j;
//全部初始化为0
for (i=0;i<4; i++) {
for(j=0;j<6;j++){
a[i][j]=0;
}
}
a[1][2]=1;
a[2][1]=2;
a[2][3]=3;
//输出二维数组
for (i=0;i<4; i++) {
for(j=0;j<6;j++){
printf("%d ",a[i][j]);
}
printf("\n");
}
//看看二维数组的内存布局
printf("\n 二维数组a的首地址=%p", a);
printf("\n 二维数组a[0]的地址=%p" , a[0]);
printf("\n 二维数组a[0][0]的地址=%p" , &a[0][0]);
printf("\n 二维数组a[0][1]的地址=%p" , &a[0][1]);
//将二维数组的各个元素得地址输出
printf("\n");
for(i=0;i<4;i++){
printf("a[%d]的地址=%p",i,a[i]);
for(j=0;j<6;j++){
printf("a[%d][%d]的地址=%p",i,j,&a[i][j]);
}
printf("\n");
}
return 0;
}
11.1.4 使用方式2:直接初始化
11.2 二维数组使用细节和注意事项
1)可以只对部分元素赋值,未赋值的元素自动取"零"值