C 多维数组
多维数组
在上一章中,您学习了 数组,也称为 **一维数组**。它们非常有用,您在 C 编程中会经常使用它们。但是,如果您想以表格形式存储数据,例如具有行和列的表格,则需要熟悉 **多维数组**。
多维数组实际上是一个数组的数组。
数组可以有任意数量的维度。在本节中,我们将介绍最常见的二维数组 (2D)。
二维数组
二维数组也称为矩阵(一个具有行和列的表格)。
要创建一个包含整数的二维数组,请查看以下示例
int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };
第一维表示行数 **[2]**,第二维表示列数 **[3]**。值按行顺序放置,可以这样可视化
访问二维数组的元素
要访问二维数组的元素,您必须指定行和列的索引号。
此语句访问 **matrix** 数组中 **第一行 (0)** 和 **第三列 (2)** 的元素的值。
**请记住:** 数组索引从 0 开始: [0] 是第一个元素。 [1] 是第二个元素,依此类推。
更改二维数组中的元素
要更改元素的值,请引用每个维度的元素索引号
以下示例将更改 **第一行 (0)** 和 **第一列 (0)** 中的元素的值
示例
int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };
matrix[0][0] = 9;
printf("%d", matrix[0][0]); // 现在输出 9 而不是 1
自己试试 »
遍历二维数组
要遍历多维数组,您需要为数组的每个维度循环一次。
以下示例输出 **matrix** 数组中的所有元素
示例
int matrix[2][3] = { {1, 4, 2}, {3, 6, 8} };
int i, j;
for (i = 0; i < 2; i++) {
for (j = 0; j < 3; j++) {
printf("%d\n", matrix[i][j]);
}
}
自己试试 »