选择题 18.  下列程序的运行结果是______。
    void fun(int *a, int i, int j)
    {  int t;
    if(i<j)
    {t=a[i]; a[i]=a[j]; a[j]=t;
    i++; j--;
    fun(a,i,j);
    }
    }
    main()
    {  int x[]={2,6,1,8},i;
    fun(x,0,3);
    for(i=0;i<4;i++)printf("%2d",x[i]);
    printf("<n");
    }
【正确答案】 C
【答案解析】 本题用了函数调用,fun()中if语句成立则进行i,j的交换,用到主函数中则为把下标0、3,1、2互换,因此,当执行完时x的数组为8,1,6,2,故选C。