选择题
以下程序的输出结果是______。
void fun(int*a, int i, int j)
{ int t;
if(i<j)
{t=a[i]; a[i]=a[j]; a[j]=t;
i++; j--;
fun(a, i, j);
}
}
main()
{int x[]={2, 6, 1, 8}, i;
fun(x, 0, 3);
for(i=0; i<4; i++) printf('%2d', x[i]);
printf('\n');
}
A、
1,2,6,8
B、
8,6,2,1
C、
8,1,6,2
D、
8,6,1,2
【正确答案】
C
【答案解析】
本题用了函数调用,fun中if语句成立则进行i,j的交换,用到主函数中则为把下标0、3,1、2互换,因此,当执行完后x的数组为8,1,6,2,故选择C选项。
提交答案
关闭