有以下程序 #include intfun(int as*int b) {if(b==0)return a; else return(fun(--a,--b)); } main() { pfin

admin2021-07-09  14

问题 有以下程序
    #include
    intfun(int as*int b)
    {if(b==0)return a;
    else    return(fun(--a,--b));
    }
    main()
    { pfintf("%d\n",fun(4,2));}
    程序的运行结果是(    )。

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

答案B

解析 由程序可知,函数fun(int a,int b)是一个递归函数。所以当主函数中调用fun(4,2)时,其执行过程如下:fun(4,2)->fun(3,1)->fun(2,0),其返回值为2。所以正确答案为选项B)。
转载请注明原文地址:https://kaotiyun.com/show/D7tp777K
0

最新回复(0)