第28473题 单选题
以下哪个C++代码片段可以正确实现斐波那契数列的递推计算?

斐波那契数列的定义为:f(0)=0,f(1)=1,当n≥2时f(n)=f(n-1)+f(n-2)。下列C++代码片段中可以正确计算该数列第n项结果的是:

A
int fib(int n) {
    return fib(n-1) + fib(n-2);
}
B
int fib(int n) {
    if(n == 0) return 0;
    if(n == 1) return 1;
    return fib(n-1) + fib(n-2);
}
C
int fib(int n) {
    int a = 0, b = 1, c;
    for(int i=2; i<=n; i++) {
        c = a + b;
        a = b;
        b = c;
    }
    return b;
}
D
int fib(int n) {
    int res = 1;
    for(int i=1; i<n; i++) {
        res *= i;
    }
    return res;
}
程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析