单选题 下面程序有错误的行是______。
main()
{ int a[3]={i};
int i;
scanf("% d", &a);
for(i=1; i<3; i++) a[0]=a[0]+a[i];
printf("a[0]=% d/n", a[0]);
}
  • A.3
  • B.6
  • C.7
  • D.4
【正确答案】 D
【答案解析】[解析] 本题考查了一维数组的定义、初始化及元素的引用方法。第4行代码scanf输入数据时,要求输入项为地址,而数组名即为数组的首地址,所以不应该再在前面加取地址符号&。