A-A+

下列函数中 哪项是正确的递归函数()。 A int Fun(int n) { if(n<1)

2022-08-06 01:37:15 问答库 阅读 174 次

问题详情

下列函数中,哪项是正确的递归函数()。
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请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:B
解析:本题考查递归函数这个知识点。递归函数由递归出口和递归体两部分组成:递归出口给出了递归终止的条件;递归体给出了递归的方式。对于选项A,当参数n>=1时,不满足递归调用的结束条件;对于选项C,当参数n<=0时,不满足递归调用的结束条件;对于选项D,当参数n<:2时,不满足递归调用的结束条件。

考点:函数