问题 单项选择题

有以下程序
#include <stdio.h>
void fun(int *a,int n)/*fun函数的功能是将a所指数组元素从大到小排序*/
int t,i,j;
for(i=0;i<n-1;j++)
for(j=i+1;j<n;j++)
if(a[i]<a[j]) t=a[i];a[i]=a[j];a[j]=t;

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

程序的运行结果是

A)1,2,3,4,5,6,7,8,9,0,
B)0,9,8,7,6,5,1,2,3,4,
C)0,9,8,7,6,5,4,3,2,1,
D)1,2,3,4,9,8,7,6,5,0,

答案

参考答案:D

解析: 在本题中,主函数在调用fun( )函数进行排序时,传递的参数是c+4和6,fun( )函数实现的功能是将数组c的第5个元素开始的6个元素依次进行从大到小的顺序排列。排序之后,数组c的内容变为{1,2,3,4,9,8,7,6,5,0}。

多项选择题
问答题