问题
单项选择题
有以下程序: Void f(int a[],iht i,int j) { int t;if(i<j){ t=a[i]; a[i]=a[j]; a[j]=t;f(a,i+1,i-1);} } main() { int i,aa[5]={1,2,3,4,5};f(aa,0,4);for(i=0;i<5;i++) printf("%d" ,aa[i]);printf("\n"); } 执行后输出结果是
A.5,4,3,2,1,
B.5,2,3,4,1,
C.1,2,3,4,5,
D.1,5,4,3,2,
答案
参考答案:A
解析: 在C语言中所谓函数的递归是在指在调用一个函数的过程中,又出现了直接或间接地调用该函数本身,直接调用该函数本身的称为函数递归,而间接调用该函数称为函数的间接递归调用.由程序可以看出函数f(a,i,j)为一递归函数,其功能是i