万能百科  > 所属分类  > 

有以下程序include<stdio.h>void fun(int x){if(x/2>1)fun(x/2);printf("%d"

有以下程序

include<stdio.h>

void fun(int x)

{if(x/2>1)fun(x/2);

printf("%d",x);

}

main

{fun(7);printf("\n");}

程序运行后的输出结果是( )。

A.1 3 7

B.7 3 1

C.7 3

D.3 7

正确答案:

D本程序主要考查递归函数。fun(7),首先将参数代入函数,因为(7/2)>1,所以执行f(3),依此类推直到f(1.5),(1.5/2)<1,所以执行打印函数,此时X值为3,然后退出f(1.5),返回f(3),打印x值即7。所以选D。

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。

标签