有以下程序 #inc1ude int fun(int a,int b) { if(b==0)return a; else return(fun(— —a,—一b)); } main()

admin2020-07-28  22

问题 有以下程序
    #inc1ude  
    int fun(int  a,int  b)
    {  if(b==0)return a;
    else    return(fun(—  —a,—一b));
    }
    main()
    {printf("%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/wP3p777K
0

最新回复(0)