主要内容:二维数组、字符串数组、多维数组(理解)
一、二维数组
有两个下标的数组称为二维数组
定义:
类型修饰符 数组名 [ 常量表达式1 ] [ 常量表达式2 ] = { 值1,值2。。。}
第一维的长度 第二维的长度
示例:
定义一个2行3列的二维数组
int array [ 2 ] [ 3 ] = {
{ 22, 24, 21 },
{ 13, 31, 11 }
}; / / 这是一个标准的二维数组
二维数组的元素也称为双下标变量
0 1 2
0 array[ 0 ][ 0 ] array[ 0 ][ 1 ] array[ 0 ][ 3 ]
1 array[ 1 ][ 0 ] array[ 1 ][ 1 ] array[ 1 ][ 2 ]
二维数组定义时,可以不指定第一维的长度,但是必须给定第二维的长度,当数组元素少于数组长度时,系统会自动按位补0
二、字符串数组
用于存放字符变量的数组称为字符数组,字符数组属于一维数组,类型为char
用于存放字符串的数组称为字符串数组
字符串数组的定义:
char 数组名 [ 常量表达式1 ] [ 常量表达式2 ] = { 值1,值2,值3... } ;
示例:
char string[3][10] = { "iPhone", "Android", "win8" } ;
该数组是包括3个字符串并且每个字符串的长度不能超过10的字符串数组
访问字符串数组中某个字符串:数组名 [ 第一维下标 ]
访问某个字符:数组名 [ 第一维下标 ] [ 第二维下标 ]
字符串数组中,每个字符串的长度不能超过第二维长度减 1
想要输出字符串数组中某个字符串,只需第一维的下标
三、多维数组
数组下标在 2 个以上,就称该数组为多维数组(理论上维数可以任意)
示例:
int a [2] [3] [4] = { 0 } ;
表示是一个2层3行4列的三位数组
元素个数 = 各维数个数乘积
多维数组占用空间 = 元素个数乘以单个元素所占的空间
三维数组的遍历
for (int i = 0; i < 层数; i++) {
for (int j = 0; j < 行数; j++) {
for (int k = 0; k < 列数; k++) {
a[ i ][ j ][ k ] = xxx;
}
}
}
对于多维数组,多一个【常量表达式】就多一个维度,几维就对应几层循环