有以下程序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,所以執(zhí)行f(3),依此類推直到f(1.5),(1.5/2)<1,所以執(zhí)行打印函數,此時X值為3,然后退出f(1.5),返回f(3),打印x值即7。所以選D。
詞條內容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領域),建議您咨詢相關領域專業(yè)人士。