问题
单项选择题
以下数组定义中错误的是______。
A.int x[2][3]=1,2,(3,4,5,6;
B.int x[][3]=0;
C.int x[][3]=1,2,3,4,5,6;
D.int x[2][3]=1,2,3,4,5,6;
答案
参考答案:A
解析: 本题考核的知识点是二维数组的定义及初始化。在定义一个二维数组同时初始化时,其第一维的长度可以省略。二维数组的初始化列表可以只使用一重花括号,其中的每个值依次代表从第1行的第1个元素起,直到第1行满,接着代表第2行、第3行……的每一个元素,若第1维长度没有省略,则这些值总个数不得超过两个维度的乘积。故选项D是正确的。二维数组的初始化列表还可以使用二重花括号括起来,其中每一个内花括号代表一行的值,在内花括号中值的个数不得超过数组第二维的长度,若不足第2维长度,则该行多出部分值被初始化为0,若第一维省略,花括号的个数代表行数。A选项第一维为2,故只有两行,但有三个花括号超出了行的要求,所以本题答案选A。