有如下程序: #include using namespace std; long fun(int n) {if(n>2) retum(fun(n-1)+fun(n一2)); else return2

admin2020-06-29  8

问题 有如下程序:
    #include
    using namespace std;
    long fun(int n)
    {if(n>2)
    retum(fun(n-1)+fun(n一2));
    else
    return2;
    }
    int main()
    {cout<    return 0;
    }
    则该程序的输出结果应该是(    )。

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

答案C

解析 主函数中调用fun(3),在fun内部当n>2时递归调用fun(n-1)+fun(n-2),否则返回2。所以当n=3时,调用fun(2)+fun(1),即返回2+2,等于4。
转载请注明原文地址:https://jikaoti.com/ti/LuA0FFFM
0

最新回复(0)