问题
单项选择题
以下语句定义正确的是( )。
A.int a[1][4]={1,2,3,4,5};
B.float a[3][]={{1,2},{2,3},{3,1}};
C.long a[2][3]={{1},{1,2},{1,2,3},{0,0}};
D.double a[][3]={8};
答案
参考答案:D
解析: 本题考查如何对二维数组的元素赋值。 选项A),数组第二维的大小是4,但是却赋值了5个元素,数组溢出;选项B),C语言规定,对于二维数组,只可以省略第一个方括号中的常量表达式,而不能省略第二个方括号中的常量表达式;选项C),数组第一维的大小是2,但是赋值超过了2;选项D),在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋初值的元素自动取0。