• 2022-05-28
    有以下程序: int f(int n) { if(n==1) return (1); else return(f(n-1)+1); } int main() { int i,j=0; for(i=1;i<3;i++) j+=f(i); printf("%d ",j); }
  • 3

    内容

    • 0

      输出结果为___________ main( ) { int i; for (i=1;i <= 5;i++) printf("%d ",f( i )); } f(int n) { static int j=1; j=j*n; return( j ); }

    • 1

      使用递归函数计算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;

    • 2

      使用递归函数计算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;

    • 3

      【单选题】有以下程序 intf(intn) {if(n==1)return1; elsereturnf(n-1)+1; } int main() {inti,j=0; for(i=1;i<3;i++)j+=f(i); printf("%d\n",j); return 0; } A. 4 B. 3 C. 2 D. 1

    • 4

      下述程序的结果是_______。 fun(int n) { if(n==1) return (1); else return(n*fun(n-1)); } int main() { int i=5; printf(“%d”,fun(i); }