有以下程序: void f(int a[],int i,int j) {int t; if(i<j) { t=a[i];a[i]=a[j];a[j]=t; f(a,i+1,j-1); } } main()

admin2010-09-05  17

问题 有以下程序:
   void f(int a[],int i,int j)
   {int t;
   if(i<j)
   { t=a;a=a[j];a[j]=t;
   f(a,i+1,j-1);
   }
   }
   main()
   {  int i,aa[5]={1,2,3,4,5};
   f(aa,0,4);
   for(i=0;i<5;i++) printf("%d,",aa);printf("\n");
   }
   执行后的输出结果是【  】。

选项

答案1,5,4,3,2

解析 第一次调用函数f后aa[0]=5、aa[4]=1;第二次调用函数f后aa[1]=4、aa[4]=2;第三次调用函数f后aa[3]=3。正确答案为1,5,4,3,2。
转载请注明原文地址:https://jikaoti.com/ti/jjI0FFFM
0

最新回复(0)