简答题
👁️ 浏览量:

试题题干

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,4,6},i;
   fun(x,0,2);
   for(i=0;i<3;i++) printf(″%2d″,x[i]);
   printf(″\n″);

参考答案

试题解析

在主函数中,执行fun(x,0,2);需要调用函数fun(),即i=0,j=2,符合if语句,执行t=a[i];a[i]=a[j];a[j]=t;即t=a[0];a[0]=a[2];a[2]=t;,则此时主函数中的一维数组为x[]={6,4,2},再执行for循环,变量i的值为0,1,2,则输出的数组元素为x[0],x[1]x[2]即6,4,2。