问题 单项选择题

以下语句定义正确的是( )。

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。

单项选择题
单项选择题