有以下程序: #include<stdio.h> int fun(int a,int b) { if(b==0)return a: else return(fun(一一a,一一b)); } main(

admin2020-01-10  21

问题 有以下程序:
    #include<stdio.h>
    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函数是一个递归函数,其功能是:当b的值为零时,返回此时a的值;否则,返回fun(——a,——b),即将a和b的值分别减1后返回fun(a,b)。当b不断递减时,a也不断递减,直到b为零。执行过程为:执行fun(4,2),b=2,返回f(3,1),此时b=1,返回f(2,0),b=0,返回a的值2。
转载请注明原文地址:https://kaotiyun.com/show/OUCp777K
0

相关试题推荐
最新回复(0)