问题
单项选择题
有以下程序(函数fun只对下标为偶数的元素进行操作) #include<stdio.h> void fun(int *a,int n) {int i,j,k,t; for(i=0;i<n-1;i+=2) {k=i; for(j=i;j<n;j+=2)if(a[j]>a[k])k=j; t=a[i];a[i]=a[k];a[k]=t; } } main() {int aa[10]={1,2,3,4,5,6,7),i; fun(aa,7); for(i=0;i<7;i++)printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是( )。
A.7,2,5,4,3,6,1
B.1,6,3,4,5,2,7
C.7,6,5,4,3,2,1
D.1,7,3,5,6,2,1
答案
参考答案:A
解析: 函数fun的功能是对下标为偶数的元素进行从大到小的排序,所以在主函数中执行fum(aa,7)后,数组aa中下标为偶数的数组元素1,3,5,7已经按降序排列,变为7,5,3,1。