试题与答案

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

题型:单项选择题

题目:

下列函数中,哪项是正确的递归函数( )。 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);}

答案:

参考答案:B

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

试题推荐
微信公众账号搜索答案