选择题   有下列程序:
    #include<stdio.h>
    void fun(int a[],int n,int flag)
    {int i=0,j,t;
    for(i=0;i<n-1;i++)
    for(j=i+1;j<n;j++)
    if(flag?(a[i]>a[j]):(a[i]<a[j]))
    {t=a[i];a[i]=a[j];a[j]=t;}
    }
    main()
    {int c[10]={7,9,10,8,3,5,1,6,2,4},i;
    fun(c,10,1);
    fun(c,8,0);
    for(i=0;i<10;i++)
    printf('%d,',c[i]);
    }
    程序执行后的输出结果是______。
 
【正确答案】 A
【答案解析】在本题中,fun()函数接收数组a、数组元素个数n以及整型变量flag,然后通过for循环遍历数组a的n个元素,若flag为1,则将数组元素升序排列;若flag为0,则将数组元素逆序排列。main()函数定义整型数组c,它包含10个元素,首先将数组c、元素个数10和1传给fun()函数,将c中10个元素升序排列,结果为:1,2,3,4,5,6,7,8,9,10,;然后再次调用fun()函数,将数组c、元素个数8和0传给fun()函数,将c中前8个元素逆序排列,结果为:8,7,6,5,4,3,2,1,9,10。故本题答案为A选项。