问题
单项选择题
有以下程序: void sum(int a[]) { a[0]=a[-1)+a[1];} main() {int a[10]=(1,2,3,4,5,6,7,8,9,10}; sum(&a[2]); printf("%d\n",a[2]); } 程序运行后的输出结果是 ______。
A.6
B.7
C.5
D.8
答案
参考答案:A
解析: 调用sum(&a[2])时,a[0]=a[2]=3,a[-1]=a[1]=2,a[1)=a[3]=4,因此a[2]=6,可以看到sum函数的功能是将数组的一项的值改成其前一项的值与后一项的值之和。