问题
填空题
以下程序运行后的输出结果是 【14】 。
fun(iht x)
if(x/2>0) fun(x/2);
printf("%d",x);
main()
fun(6);
答案
参考答案:1 3 6
解析: 本题考查函数的递归调用。函数fun是递归函数,语句fun(6)的调用过程如下:
第1次:调用fun(6),6/2=3>0成立,调用fun(3);
第2次:调用fun(3),3/2=1>0成立,调用fun(1);
第3次:调用fun(1),1/2=0>0不成立,执行语句printf("%d",x);,输出1。
推出fun(3)输出3,fun(6)输出为6。