定义
其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度。例如:int a[3][4]; 说明了一个三行四列的数组,数组名为a,其下标变量的类型为整型。该数组的下标变量共有3×4个,即:
a[0][0],a[0][1],a[0][2],a[0][3]
a[1][0],a[1][1],a[1][2],a[1][3]
a[2][0],a[2][1],a[2][2],a[2][3]
下面我用两种方法来介绍二维数组的初始化:
方法一:
程序代码:
#include<stdio.h>
void inti(int (*arr)[4])
{
int i = 0;
int j = 0;
for ( i = 0; i < 3; i++)
{
for ( j = 0; j < 4; j++)
{
*(*( arr + i) + j) = 4 * i + j + 1;
}
}
}
void print(int (*arr)[4])
{
int i = 0;
int j = 0;
for ( i = 0; i < 3; i++)
{
for ( j = 0; j < 4; j++)
{
printf( "%d ", arr [i][j]);
}
}
printf( "\n");
}
int main()
{
int arr[3][4];
inti(arr);
print(arr);
system( "pause");
return 0;
}
方法二:
程序代码:
#include<stdio.h>
void init(int *arr, int size )
{
int i = 0;
for (i = 0; i < size ; i++)
{
arr[i] = i;
}
}
void print(int *arr, int size )
{
int i = 0;
for (i = 0; i < size ; i++)
{
printf( "%d ", arr [i]);
}
printf( "\n");
}
int main()
{
int arr[3][4];
init(*arr, sizeof(arr) / sizeof (arr[0][0]));
print(*arr, sizeof(arr) / sizeof (arr[0][0]));
system( "pause");
return 0;
}