以下程序的输出结果是( ). int fun(int n,int *s) { int f1,f2; if(n==0‖n==1) *s=1; else { fun(n-1,&f1); fun(n-2,&f2); *s=f1+f2; } } main( ) { int x; fun(6,&x); printf("\n%d" ,x); }
举一反三
- 有以下程序 void fun(int n,int p) int f1,f2 if(n==1||n==2) p=1 else fun(n-1,
- 下列程序的输出结果是【 】。 long fun(int n) { long s; if(n==1||n==2) s=2; else s=n+fun(n-1); return s; } int main() { cout<<fun(4); return 0; }
- 下列函数中,哪项是正确的递归函数( )。 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);
- 以下程序运行后的输出结果是________。 #include "stdio.h" int f(int x); void main() { int n=1,m; m=f(f(f(n))); printf("%d",m); } int f(int x) {return x*2;}: 1/#/2/#/4/#/8
- 读程序并写结果。#include stdio.hlong fun(int n){ long s;if(n==1||n==2)s=2;elses=n-fun(n-1);return s;}int main(){ printf(%ld\n,fun(3)); return 0;}