C 语言 的 数组 是支持多维的,如果是二维数组,那么数组的每一个元素都是一个一维数组,如果数组是三维数组,那么每一个元素都是一个二维数组。
一般我们使用最多的就是二维数组,很少用到三维数组,更多维的数组几乎更用不到。
C 语言的二维数组,就是数组的每一个元素都是一个一维数组。
type arrName[row][col]
参数 | 描述 |
---|---|
type | 数组每一个元素的类型。 |
arrName | 数组名。 |
row | 二维数组的行数。 |
col | 二维数组的列数。 |
我们定义了一个二维数组 arrName,该数组拥有 row 行 col 列,每个元素的 类型 都是 Type。
C 语言的三维数组,就是数组的每一个元素都是一个二维数组。
type arrName[pos][row][col]
参数 | 描述 |
---|---|
type | 数组每一个元素的类型。 |
arrName | 数组名。 |
pos | 三维数组包含几个二维数组。 |
row | 二维数组的行数。 |
col | 二维数组的列数。 |
定义一个三维数组 arrName,该数组的每一个元素都是一个二维数组,二维数组拥有 row 行 col 列,每个元素的类型都是 Type。
创建二维数组时,必须指定二维数组的行和列
#include <stdio.h>
int main()
{
printf("嗨客网(www.haicoder.net)\n\n");
// C语言二维数组
int arr[5][3] = {
{1, 11, 111},
{2, 22, 222},
{3, 33, 333},
{4, 44, 444},
{5, 55, 555}
};
int i = 0;
for(i = 0; i < 5; i++)
{
int j = 0;
for(j = 0; j < 3; j++)
{
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
程序运行后,控制台输出如下:
我们创建了一个五行三列的二维数组,每个数组元素都是 int 类型,接着我们使用数组初始化的方式给数组赋值。最后,我们使用 printf 打印数组的内容。
在打印数组内容时,我们使用了双层 for 循环,第一层 for 循环来遍历数组的行数,第二层 for 循环来遍历数组的列表,最后,打印出所有的元素。
创建三维数组
#include <stdio.h>
int main()
{
printf("嗨客网(www.haicoder.net)\n\n");
// C语言三维数组
int arr[2][5][3] = {
{
{1, 11, 111},
{2, 22, 222},
{3, 33, 333},
{4, 44, 444},
{5, 55, 555}
},
{
{21, 211, 2111},
{22, 222, 2222},
{23, 233, 2333},
{24, 244, 2444},
{25, 255, 2555}
}
};
int k = 0;
for(k = 0; k < 2; k++)
{
int i = 0;
for(i = 0; i < 5; i++)
{
int j = 0;
for(j = 0; j < 3; j++)
{
printf("%d ", arr[k][i][j]);
}
printf("\n");
}
printf("\n\n");
}
return 0;
}
程序运行后,控制台输出如下:
我们创建了一个三维数组,该数组有两个元素,每个元素也都是一个五行三列的二维数组。
C 语言的数组是支持多维的,如果是二维数组,那么数组的每一个元素都是一个一维数组,如果数组是三维数组,那么每一个元素都是一个二维数组。