问题 单项选择题

有以下程序: void change(int k[]){k[0]=k[5];) main() {int x[10]={1,2,3,4,5,6,7,8,9,10},n=0; while(n<=4)(change(&x[n]);n++;} for(n=0;n<5;n++)printf("%d",x[n]); printf("\n"); } 程序运行后的输出结果是______。

A.6 7 8 9 10

B.1 3 5 7 9

C.1 2 3 4 5

D.6 2 3 4 5

答案

参考答案:A

解析: 本题主要考查数组元素的地址作为实参,当n=0时,把x[0]的地址传递给被调函数change(),即把形参k和实参x指向同一个存储单元,执行被调函数后k[0]=6,即x[0]=6;当n=1时,执行被调函数后x[1]=7,以此类推,最后得到x数组的值为6,7,8,9,10。

单项选择题
选择题