中国大学MOOC: int fun(int k){ if (k<1) return 0; else if(k==1) return 1; else return fun(k-1)+1;}若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是( )。
3
举一反三
- 设有如下函数定义 intfun(intk) {if(k<1) return0; elseif(k==1) return1; else returnfun(k-1)+1; } 若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是_______。
- 下列函数中,哪项是正确的递归函数( )。 A: A int Fun(int n) B: if(n<1) return 1; C: else D: return n*Fun(n+1); E: B) int Fun(ira n) F: if(abs(n)<1) return 1; G: else H: return n*Fun(n/2); I: C) int Fun(int n) J: if(n>1) return 1; K: else L: return n*Fun(n*2)1 M: D) int Fun(int n) N: if(n>1) return 1; O: else P: retun n*Fun(n-1);
- 设有如下函数定义 int fun( int k ) { if (k<1) ret...fun总共被调用的次数是_______。
- 以下程序的运行结果为:int fun(int n){ if(n==1) return 1; else return fun(n-1)+1;} int main(){ int i,j=0; for(i=1;i<3;i++) j += fun(i); printf("%d\n",j); return 0;}
- 下述程序的结果是_______。 fun(int n) { if(n==1) return (1); else return(n*fun(n-1)); } int main() { int i=5; printf(“%d”,fun(i); }
内容
- 0
对于下面递归函数fun,调用fun(3) 的返回值是 。 fun(int n) { return ((n>0) ? 2*fun(n-1)+fun(n-2) : -1); }
- 1
下面程序的输出是()。 int w=3; main() { int w=10; printf("%d ",fun(5)*w); } fun(int k) { if(k==0) returnw; return(fun(k-1)*k); }
- 2
下面程序的输出是int w=3;fun(int k){if(k==0) return w;return(fun(k-1)*k);}main(){int w=10; printf("%d\n",fun(5)*w);} A: 360 B: 3600 C: 1080 D: 1200
- 3
有以下程序: #include int fun(int x, int y) { static int m=0, i=2; i+=m+1; m=i+x+y; return m; } main() { int j=1, m=1, k; k=fun(j, m); printf("%d,", k); k=fun(j, m); printf("%d\n", k); } 执行后的输出结果是().
- 4
以下程序调用fun函数求数组中最大值所在元素的下标。 #include void fun(int *s,int n, int *k) { int i; for(i=0,*k=i;is[*k]) _ } int main() { int a[5]={1,8,3,6,9},k; fun(a,5,&k); printf(“%d,%d ”,k,a[k]); return 0; }