递归函数f(n)的功能是计算1+2+…+n,且n≥1,则f(n)的代码段是 (49) 。
A: if n>1 then return 1 else return n+f(n-1)
B: if n>1 then return 1 else return n+f(n+1)
C: if n>1 then return 0 else return n+f(n+1)
D: if n<1 then return 0 else return n+f(n-1)
A: if n>1 then return 1 else return n+f(n-1)
B: if n>1 then return 1 else return n+f(n+1)
C: if n>1 then return 0 else return n+f(n+1)
D: if n<1 then return 0 else return n+f(n-1)
举一反三
- 使用递归函数计算n!(n=0,1,2,3,…)的是______ A: fac(int n) if(n==0)return 1; else for(i=1;i<=n;i++)f*=i; return f; } B: fac(int n) { if(n==0‖n==1)return 1; else return n*fac(n-1); } C: fac(int n) {int i=1,f=1; if(n==0)return 1; else do{f*=i;}while(i++<n); return f; } D: fac(int n) {int i=1,f=1; if(n==0)return 1; else while(1<=n)f*=i++; return f;
- 使用递归函数计算n!(n=0,1,2,3,……)的是( ) A: fac(int n) B: int i,f=1; C: if(n==0)return 1; D: else for(i=1;i<=n;i++)f*=i; E: return f; F: fac(int n) G: if(n==0||n==1)return 1; H: else return n*fac(n-1); I: fac(int n) J: int i=1,f=1; K: if(n==0)return 1; L: else while(i<=n)f*=i++; M: return f; N: fac(int n) O: int i=1,f=1; P: if(n==0)return 1; Q: else dof*=i;while(i++<n); R: return f;
- int f( unsigned int n) { if ( n==0 || n==1 ) return 1; else return n*f(n-1);} A: O(1) B: O(n) C: O(n^2) D: O(n!)
- 下面哪个是正确的递归函数 A: def fun1(n): if n==1: return 1 else: return n*fun1(n-1) B: def fun2(n): if n==1: return 1 else: return n*fun2(n+1) C: def fun3(n): return n*fun3(n-1) D: def fun4(n): return n*fun4(n+1)
- 下列函数中,哪项是正确的递归函数( )。 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);