第28184题 单选题
以下哪个选项的代码可以正确修复该阶乘递归函数的问题,使其能正确计算非负整数n的阶乘并避免无限递归?

已知以下C++代码意图计算非负整数n的阶乘,但缺少正确的递归终止条件,代码如下:

int factorial(int n) {
    return n * factorial(n - 1);
}

下列四个选项中,哪一个是添加到函数开头的正确终止条件代码?

A

if(n < 1) return 1;

B

if(n == 1) return 1;

C

if(n == 0 || n == 1) return 1;

D

return 1;

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析