二维数组
1 概念
元素为一维数组的数组(数组的数组)
(1)数据类型相同
(2)地址连续
2 定义
存储类型 数据类型 数组名[元素个数];
存储类型 数据类型 数组名[行数][列数];
行数:有几个一维数组
列数:一维数组中有几个元素
int a[2][3];
//定义了一个二维数组,该数组有两个元素,每一个元素是由3个int型的元素组成的
初始化
1 部分初始化
int a[2][3] = {1,2,3};
2. 全部初始化
int a[2][3] = {1,2,3,4,5,6};
int a[2][3] = {{0},{4,5,6}};
int a[2][ ] = {1,2,3,4,5,6};//error 列数不能省
int a[ ][3] ={1,2,3,4,5};//有2个一维数组,每一个一维数组中有3个元素
注意:二维数组的行数可以省略,但是列数不能省
3. 访问
数组名[下标];
注意:下标必须从0开始
二维字符数组
char str[30] = {0};
scanf(“%s”,str);
printf(“%s”,str);
存储类型 数据类型 数组名[行数][列数];
char str[5][20]; //定义了一个长度为5的数组,数组中的每一个元素又是一个长度为20的char型元素