问题
单项选择题
有以下程序的输出结果是( ) void sum(int *a) { a[0]=a[1];} main( ) { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; for(i=2;i>=0;i--) sp; sum(&aa[i]); printf(“%d\n”,aa[0]); }
A.4
B.3
C.2
D.1
答案
参考答案:A
解析:在本题中,由于函数中的参数为指针,因此在main函数中的变量可能会发生改变。程序执行过程为 i sum(&aa[i]) 2 aa[2]=4 1 aa[1]=4 0 aa[0]=4