该递归函数调用了哪个选项()def f(n):if n==1:return 1else:return f(n-1)*nn=5print(f(n))
A: 6
B: 3
C: 5
D: 1
A: 6
B: 3
C: 5
D: 1
举一反三
- 该递归函数调用了几函数()def f(n):if n==1:return 1else:return f(n-1)*nn=5print(f(n)) A: 6 B: 3 C: 5 D: 1
- 在下列程序中,调用f(5)的值是( ) int f(int n) { if(n==1) return(1); else if(n==2) return(2); else return(f(n-1)+f(n-2)); }
- 递归函数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: 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)
- 使用递归函数计算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;