下列函数中,哪项是正确的递归函数( )。 A int Fun(int n) { if(n<1) return 1; else return n*Fun(n+1); } B)

admin2010-03-29  36

问题 下列函数中,哪项是正确的递归函数(    )。
   A int Fun(int n)
     {
        if(n<1)   return 1;
        else      return n*Fun(n+1);
     }
  B) int Fun(ira n)
     {
        if(abs(n)<1)   return 1;
        else           return n*Fun(n/2);
     }
     C) int Fun(int n)
        {
           if(n>1)   return 1;
           else      return n*Fun(n*2)1
        }
     D) int Fun(int n)
        {
           if(n>1)  return 1;
           else     retun n*Fun(n-1);
        }

选项 A、A
B、B
C、C
D、D

答案2

解析 本题考查递归函数这个知识点。递归函数由递归出口和递归体两部分组成:递归出口给出了递归终止的条件;递归体给出了递归的方式。对于选项A,当参数n>=1时,不满足递归调用的结束条件;对于选项C,当参数n<=0时,不满足递归调用的结束条件;对于选项D,当参数n<:2时,不满足递归调用的结束条件。
转载请注明原文地址:https://jikaoti.com/ti/NxW0FFFM
0

最新回复(0)