有以下程序  void sort(int a[ ],int n)  { int i,j,t;   for(i=0;i<n-1;i+=2)    for(j=i+2;j<n;j+=2)     if(a[i]<a[j])  {  t=a[i];a[i]=a[

admin2006-03-15  46

问题 有以下程序  void sort(int a[ ],int n)  { int i,j,t;   for(i=0;i<n-1;i+=2)    for(j=i+2;j<n;j+=2)     if(a<a[j])  {  t=a;a=a[j];a[j]=t;} }  main ( )  { int aa[10]={1,2,3,4,5,6,7,8,9,10},i;   sort(aa,10);   for(i=0;i<10;i++)    printf(“%d”,aa);   printf(“\n”);}  其输出结果是( )

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

答案C

解析 通过sort()函数中的双重for循环,对数组下标为偶数的元素进行从大到小的排序,下标为奇数的元素不变。
转载请注明原文地址:https://jikaoti.com/ti/5US0FFFM
0

最新回复(0)