100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > C语言二维数组的初始化

C语言二维数组的初始化

时间:2018-12-23 11:00:03

相关推荐

C语言二维数组的初始化

二维数组的初始化可以按行分段赋值,也可按行连续赋值。

例如,对于数组 a[5][3],按行分段赋值应该写作:

int a[5][3]={{80,75,92},{61,65,71},{59,63,70},{85,87,90},{76,77,85}};

其中,花括号的对数代表行数,方括号中的值的个数代表列数。

按行连续赋值应该写作:

int a[5][3]={80,75,92,61,65,71,59,63,70,85,87,90,76,77,85};

这两种赋初值的结果是完全相同的。

在这种赋值方式中,编译器会按行和列的个数去自动识别数值所在的位置。如此数组定义3列,那么每相邻的三个值为一行,依此类推,直到行的个数达到所定义的列数为止。

形象地表示地话,这个数组是这样的:

80 75 92

61 65 71

59 63 70

85 87 90

76 77 85

(此表示方式是为了更易于理解编译器是如何识别行和列)

除此之外

1)在对二维数组定义时,行的值可忽略,但列的值不能忽略,如

int a[][3]={{0,0,0},{1,1,1}};

这种方式正确。

2)可以只对部分元素赋值,未赋值的元素自动取“零”值。如

int a[3][3]={{1},{2},{3}};

是对每一行的第一列元素赋值,未赋值的元素的值为 0。

形象地表示地话,这个数组是这样的:

1 0 0

2 0 0

3 0 0

3)二维数组可以看作是由一维数组嵌套而成的;如果一个数组的每个元素又是一个数组,那么它就是二维数组。当然,前提是各个元素的类型必须相同。根据这样的分析,一个二维数组也可以分解为多个一维数组,C语言允许这种分解。

例如,二维数组a[3][4]可分解为三个一维数组,它们的数组名分别为 a[0]、a[1]、a[2]。

这三个一维数组可以直接拿来使用。这三个一维数组都有 4 个元素,比如,一维数组 a[0]的元素为 a[0][0]、a[0][1]、a[0][2]、a[0][3]。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。