计算斐波那契数列第n项的函数定义如下: mt fib(int n) { if(n==0) return 1: else if(n==1) return 2: else return fib(n

admin2021-07-02  24

问题 计算斐波那契数列第n项的函数定义如下:
    mt fib(int n)
    {
    if(n==0)
    return 1:
    else if(n==1)
    return 2:
    else
    return fib(n-1)+6b(n-2);
    }
    执行调用表达式fib(2),则函数fib被调用的次数是(    )。

选项 A、1
B、2
C、3
D、4

答案C

解析 题意fib( )函数是一个递归函数,当n等于0时,函数返回0;当n等于1时,函数返回1;当n大于1时,函数递归调用自身,返回值为fib(n-1)+fib(n-2);胁(2)调用一次函数,展开后等价于fib(1)+fib(0),又调用了2次,等价于1+0=1,总共调用3次fib( )函数,本题答案为C。
转载请注明原文地址:https://jikaoti.com/ti/yjh0FFFM
0

最新回复(0)