有以下程序 fun(int a, int b) { if(a>b) return(a); else return(b); } main( ) { in

4 查阅

有以下程序

fun(int a, int b)

{ if(a>b) return(a);

else return(b);

}

main( )

{ int x=3, y=8, z=6, r;

r=fun(fun(x,y), 2*z);

printf("%d\n", r);

}

程序运行后的输出结果是

A.3

B.6

C.8

D.12

参考答案:

D解析:此题考查了带返回值的函数的调用。fun()函数的功能是求出两个数的最大数并返回主函数r=fun(fun(x,y),2*z)处。执行过程为先调用函数fun(x,y)求得两数中的较大者,再进行自身的递归调用,此时函数中的两个参数为刚求得的数和2*z(即12)传递给子函数,找出两数中的大数。

计算机二级