填空题
下列程序的输出结果是 1。
#include <stdio.h>
void fun(int x)
{
if(x/2>0) fun(x/2);
printf("%d",x);
}
main2
{
fun(3);printf("/n");
}
【正确答案】
1、13
【答案解析】此题考查的是函数的递归调用,进入主函数调用fun---|||________|||---函数,进行if语句的判断,当x=3时,条件成立,执行fun(x/2);语句,递归调用fun---|||________|||---函数本身,进行if语句条件判断,if(x/2>0)条件不成立,用printf输出1;返回上一次调用fun---|||________|||---函数,printf输出3,因此程序的最终输出结果为13。