永发信息网

以下能对一维数组a进行正确初始化的语句是 ( )

答案:6  悬赏:80  手机版
解决时间 2021-03-22 07:00
  • 提问者网友:爱了却不能说
  • 2021-03-21 12:02
以下能对一维数组a进行正确初始化的语句是 ( )
A.int a[10]=(0,0,0,0,0); B. int a[10]={ };
C.int a[ ]={0}; D. int a[10]={10*1};
为什么,请详细解答
最佳答案
  • 五星知识达人网友:平生事
  • 2021-03-21 12:29
选D。
数组初始化:
a[数组元素个数]={各元素的值用,连接}
A 写成括号不对
B {}中没写值,不对
C 正确,数组直接赋初值可以不标数组元素个数,会根据后面赋值个数自动分配空间
D 正确,但要注意这样写只是给a[0]赋值10,其余的9个赋值为0,而不是将十个都赋值成1。



扩展资料:
数组的定义格式如下:

类型标识符 数组名[常量表达式]
说明:
一、数组名的命名规则与变量名的命名规则一致
二、常量表达式表示数组元素的个数。可以是常量或符号常量,不能为变量。
例如: 
int a[10];                     //数组a的定义是合法的
int a[n];                      //若n为变量,则数组a的定义是非法的。
参考资料来源:百度百科-一维数组
全部回答
  • 1楼网友:执傲
  • 2021-03-21 15:14
C A中指定了数组a的大小是10,所以要有10个0才行,这里只有5个 B中也是一样,一个元素都没有 D中10*1相当于一个表达式,和一个数是一样的,相当于10 只有C中,a的大小没有指定,只初始化了一个0,意思就是说a的大小是1,这一个元素是0
  • 2楼网友:拾荒鲤
  • 2021-03-21 14:34
第一个可以, 第二个,如果{1,0,1}{}两个之间加个逗号,也可以 第三个,最前面加个大括号的话{,语法正确,但是越界了,超出长度,去掉{1,2,3}和{4,5}和{6}任意一个能成功。
  • 3楼网友:西风乍起
  • 2021-03-21 13:14
C、D 数组初始化: a[数组元素个数]={各元素的值用,连接} A 写成括号不对 B {}中没写值,不对 C 正确,数组直接赋初值可以不标数组元素个数,会根据后面赋值个数自动分配空间 D 正确,但要注意这样写只是给a[0]赋值10,其余的9个赋值为0,而不是将十个都赋值成1 单选的时候最好选C 因为揣摩出题者的意图,他想考察的是能不能用*给数组内全部元素赋值(比如5*2,把数组中5个元素都赋值为2),但他没有考虑周全,造成题目漏洞 在VC++6.0编译器中D选项能够正确编译(等价于int a[10]={10})
  • 4楼网友:末日狂欢
  • 2021-03-21 13:03
数组初始化: a[数组元素个数]={各元素的值用,连接} A 写成括号不对 B {}中没写值,不对 C 正确,数组直接赋初值可以不标数组元素个数,会根据后面赋值个数自动分配空间 D 正确,但要注意这样写只是给a[0]赋值10,其余的9个赋值为0,而不是将十个都赋值成1
  • 5楼网友:北方的南先生
  • 2021-03-21 12:37
只有A是正确的,一维整型数组长度为5,每个元素都赋初始值0 选项B:没有给出元素的值。 选项C:{0}只能对数组的第一个元素a[0]赋值,元素个数未知,因此a[]不合法,不知道元素的个数。 选项D:数组长度为10,而{1,1,1,1,1,1}只给数组前6个元素赋初始值,后4个元素未知。 选A
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯