首页 > 试题广场 >

若有说明: int a[][4]={0,0};则下面不正确的

[单选题]
若有声明int a[][4] = {0, 0};,则下面不正确的叙述是()
  • 数组a的每个元素都可得到初值0
  • 二维数组a的第一维大小为1
  • 因为初始化数值格数除以第二维大小的结果向上取整为1,所以第一维大小为1
  • 有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
定义一个二维数组,这个数组的每一行有四个元素,一般行数是可以省略的 电脑会根据你的初始化自动计算行数。‘因为初始化只给了两个元素 所以行数为1’
编辑于 2017-09-21 22:30:45 回复(0)
好像是数组初始化一部分,未初始化的全部为0,所以3,4位也是0
发表于 2017-10-07 14:25:26 回复(1)
为何不是A呢? 不是说,局部变量,在栈空间中,未初始化是乱码吗?这个也看不出来是全局还是局部变量。所以为何是D?
发表于 2018-01-18 11:29:48 回复(4)
B选项没说清楚吧,看到第一维大小,我就直接想到sizeof(a[0]),4个int,不是16吗,然后解析才知道是a的维数
发表于 2020-04-08 11:46:55 回复(0)

定义花括号里面没有再花括号,就是一维咯。自动补0

发表于 2019-08-12 00:00:35 回复(0)
不理解C答案。。。
发表于 2019-07-12 10:13:41 回复(0)
数组为初始化,中存放的是乱码,但是只要初始化一个数,其余数据自动填充0
发表于 2022-03-26 18:27:41 回复(0)
数组初始化列表中的元素个数小于指定的数组长度时,不足的元素补以默认值
发表于 2019-08-07 09:08:35 回复(0)
b选项什么意思啊?第一维大小为1???
发表于 2019-06-13 08:39:55 回复(0)
对于局部变量未初始化可能会乱码,但数组只要前面赋值,后面默认为0,如果是int a[][4]={{0}{0}},那么就不是一维,同时可以采用sizeof(a)查看是多少,计算出
编辑于 2023-08-27 22:05:48 回复(0)
正确答案:D
发表于 2017-09-23 12:04:21 回复(0)