用C初始化多维数组

数组是连续内存位置中相同类型元素的集合。最低地址对应于第一个元素,而最高地址对应于最后一个元素。数组索引以零开头,以数组大小减去一(数组大小-1)结束。数组大小必须是大于零的整数。

让我们来看一个例子

If array size = 10
First index of array = 0
Last index of array = array size - 1 = 10-1 = 9

多维数组是数组的数组。数据以行主要顺序以表格形式存储。

以下是多维数组的语法。

type array_name[array_size1][array_size2].......[array_sizeN];

这里,

array_name-给数组的任何名称。

array_size-数组的大小。

以下是如何初始化多维数组。

type array_name[array_size1][array_size2].......[array_sizeN]; = { {elements} , {elements} , ... , {elements} }

以下是多维数组的示例。

示例

#include <stdio.h>
int main () {
   int arr[2][3] = { {5,2,3}, {28,8,30}};
   int i, j;
   for ( i = 0; i < 2; i++ ) {
      for ( j = 0; j < 3; j++ )
      printf("arr[%d][%d] = %d\n", i, j, arr[i][j] );
   }
   return 0;
}

输出结果

arr[0][0] = 5
arr[0][1] = 2
arr[0][2] = 3
arr[1][0] = 28
arr[1][1] = 8
arr[1][2] = 30

在上面的程序中,声明了一个二维数组。

int arr[2][3] = { {5,2,3}, {28,8,30}};

数组的元素使用嵌套的for循环打印。

for ( i = 0; i < 2; i++ ) {
   for ( j = 0; j < 3; j++ )
   printf("arr[%d][%d] = %d\n", i, j, arr[i][j] );
}