以下C++递归函数中,存在错误的终止条件设计的是?

ep709319 单选题 共 个子题

下列四个递归函数的实现中,因终止条件设计不合理会导致无限递归或无法完成预期功能的是:

A

计算正整数n的阶乘的递归函数:

int fact(int n) {
    if(n == 0 || n == 1) return 1;
    return n * fact(n - 1);
}
B

递归计算1到n的和的函数:

int sum(int n) {
    if(n == 1) return 1;
    return sum(n);
}
C

递归打印从n到1的整数的函数:

void print(int n) {
    if(n == 0) return;
    std::cout << n << " ";
    print(n - 1);
}
D

求斐波那契数列第n项(n≥1)的递归函数:

int fib(int n) {
    if(n == 1 || n == 2) return 1;
    return fib(n-1) + fib(n-2);
}
正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧