在C语言中,多维数组实际上是数组的数组,二维数组就是每个元素都是一个一维数组的一维数组。
例如a[3][4];
定义了一个3行4列的二维数组,可以将a看成是有a[0]、a[1]、a[2]三个元素组成的一维数组,而每个元素a[i]都是一个有4个整形元素的数组。
1 #include<stdio.h> 2 3 int main() 4 { 5 int i, j, a[4][3] = {{1,2,3},{4,5,6},{7,8,9},{10,11,12}}, *p; 6 p = &a[0][0]; 7 for(i = 0; i < 4; i++){ 8 for(j = 0; j < 3; j++) 9 printf("%-3d", *(*(a+i) + j)); 10 printf("\n"); 11 } 12 printf("\n"); 13 14 for(i = 0; i < 4; i++){ 15 for(j = 0; j < 3; j++) 16 printf("%-3d", *(p + i*3 + j)); 17 printf("\n"); 18 } 19 printf("\n"); 20 21 for(i = 0; i < 12; i++, p++) 22 printf("%-3d", *p); 23 printf("\n"); 24 return 0; 25 }
时间: 2024-10-12 17:27:45