下面这个C语言选择题为什么选这个呢?

来源:百度知道 编辑:UC知道 时间:2024/07/04 07:38:57
题目如下:
若有初始化 int a[ ][3]={1,2,3,4,5,6,7};,则以下错误的是____
A 引用a数组时,元素的两个下标值均不能超过2
B a数组的第一维大小为3
C a数组中包含9个元素
D a数组中包含7个元素
答案:D
疑问:列数只有3列,给出的初始值只有7个,其他的为0,可它没有给出多少行啊,怎么就知道一定是3行呢?请高手答疑啊,谢谢啦!

因为每一列是三个元素
所以只能是三行啊
如果两个元素一行的话,就是4列了
所以是三行

因为每一列是3个元素,已经给出了7个元素,如果是2行的话就最多是6个元素,如果是4行的话就定义错误了,本鞥定义一个位置大小的数组

系统会自动检验到最后一行数组,然后就结束

2楼就是标准答案了