( 9 )下面的函数利用递归实现了求 1+2+3+ …… +n 的功能:int sum ( int n ) {if ( n==0 )return 0;elsereturn n+sum ( n-1 ) ;}在执行 sum ( 10 )的过程中,递归调用 sum 函数的次数是【 9 】 。

题目

( 9 )下面的函数利用递归实现了求 1+2+3+ …… +n 的功能:

int sum ( int n ) {

if ( n==0 )

return 0;

else

return n+sum ( n-1 ) ;

}

在执行 sum ( 10 )的过程中,递归调用 sum 函数的次数是【 9 】 。


相似考题
更多“( 9 )下面的函数利用递归实现了求 1+2+3+ …… +n 的功能:int sum ( int n ) {if ( n==0 )return 0 ”相关问题
  • 第1题:

    下面是一个递归程序,其功能为? long Factorial(int n){ if(1==n || n==0){ return 1; } else return n*Factorial(n-1); }

    A.求1至n的累加和

    B.求n的阶乘

    C.求n-1的阶乘

    D.函数固定结果为1


    C

  • 第2题:

    7、下面的函数利用递归实现了求1+2+3…..+n的功能: int sum(int n){ if(n==0 ) return 0; else return n+sum(n-1); } 在执行sum(10)的过程中,递归调用sum函数的次数是()。

    A.9

    B.10

    C.11

    D.8


    9

  • 第3题:

    下面函数是求阶乘的递归函数,请将程序补充完整。 long Fact(int n) { if (n < 0) return 0; if (n==1 || n==0) __________________; else ____________________; }

    A.第4行: return 1 第5行: return n*Fact(n-1)

    B.第4行: return 0 第5行: return n*Fact(n-1)

    C.第4行: return -1 第5行: return (n-1)*Fact(n)

    D.第4行: return 1 第5行: return Fact(n-1)


    (1) return 1; (2)return Fact(n-1)*n;

  • 第4题:

    下面程序可以正确求出1+2+3+。。。+n的和。() #include <stdio.h> int main() { int i = 1,sum = 0,n; scanf(“%d”,&n); while (i <= n) sum = sum + i; ++i; printf("sum=%d",sum); return 0; }


    错误

  • 第5题:

    程序填空,使下面程序实现输出N!(N<=10000)的十进制位数。 #include <stdio.h> #include <math.h> int main () { int i, n; double sum; sum = 0.0; scanf("%d", &n); for (i = 2; i <= n; i++) { sum +=_________; } printf ("%dn", (int)ceil(sum)); return 0; }


    01234