问题 单项选择题

下面程序中有错误的行是(每行程序前面的数字表示行号) ( )。
1 main()
2
3 int a[3]=1;
4 int i;
5 scanf("%d",&a);
6 for(i=1; i<3; i++) a[0]=a[0]+a[i];
7 printf("a[0]=%d\n", a[0]);
8

A) 3
B) 6
C) 7
D) 5

答案

参考答案:D

解析: 主要考查了一维数组的定义、初始化及元素的引用方法。第5行代码中scanf输入数据时,要求输入项为地址,而数组名即为数组的首地址,所以不应该再在前面加取地址符号&。

单项选择题
单项选择题