如何用一个for循环打印多维数组
打印二维数组
二维数组在内存中是按行存储的,所以可以将数组array
看出是一个一维数组,设i
表示该数组在一维数组中的位置,array
在二维数组中的行号和列号分别为[i/MAXY]
、[i%MAXY]
#define MAXY 2
#define MAXY 3
void printArray()
{
int i;
int array[MAXX][MAXY] = {1, 2, 3, 4, 5, 6};
for (i = 0; i < MAXX * MAXY; i++)
{
printf("%d\n", array[i/MAXY][i%MAXY]);
}
}
打印三维数组
void printArray()
{
int a[2][2][3] = { {{1, 6, 3}, {5, 4, 15}}, {{3, 5, 33}, {23, 12, 7}} };
for (int i = 0; i < 12; i++)
{
cout << a[i / 6][(i % 6) / 3][i % 3] << " ";
}
}