有以下程序 #include void fun(int a[ ], int n) { int i,j=0,k=n-1, b[10]; for (i=0; i

admin2019-08-18  27

问题 有以下程序
#include
void fun(int a[ ], int n)
{ int i,j=0,k=n-1, b[10];
for (i=0; i{ b =a[j];
b[k]=a[j+1];
j+=2; k--;
}
for (i=0; ia = b;
}
main()
{ int c[10]={10,9,8,7,6,5,4,3,2,1},i;
fun(c, 10);
for (i=0;i<10; i++)
printf("%d,", c);
printf("\n");
}
程序的运行结果是( )。

选项 A、10,8,6,4,2,1,3,5,7,9,
B、10,9,8,7,6,5,4,3,2,1,
C、1,2,3,4,5,6,7,8,9,10,
D、1,3,5,7,9,10,8,6,4,2,

答案A

解析 考查数组名作为函数参数。数组名作为函数参数属于地址传参,形参和实参为同一数组,变化同步。被调函数fun()的功能是将数组a下标为偶数的存放在数组b的前半部分,数组a下标为奇数的逆序存放在数组b的后半部分,然后把数组b赋给a。所以输出结果为A)。
转载请注明原文地址:https://kaotiyun.com/show/NYRp777K
0

最新回复(0)