问题 单项选择题

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

main()
int aa[10]=1,2,3,4,5,6,7,8,9,10,1;
sort(aa+2,5);
for(i=0;i<10;i++) printf("% d," ,aa[i]);
printf("\n");

程序运行后的输出结果是( )。

A.1,2,3,4,5,6,7,8,9,10

B.1,2,7,6,3,4,5,8,9,10

C.1,2,7,6,5,4,3,8,9,10

D.1,2,9,8,7,6,5,4,3,10

答案

参考答案:C

解析: sort函数是将数组按从大到小的顺序排序,主函数中调用了sort函数,sort(aa+2.5)表示从数组aa中下标为2的元素开始下标为6的5个元素按从大到小的顺序排序,其他元素不变。注意,数组下标从0开始。

填空题
单项选择题