有以下程序: #include<stdio.h> void fun(int n,int,*s) { int f; if(n==1)*s=n+1; else {fun(n-1,&f);*s=f;} } main() { int x=0; fun(4,&x);

admin2021-02-25  48

问题 有以下程序:
#include<stdio.h>
void fun(int n,int,*s)
{
int f;
if(n==1)*s=n+1;
else
{fun(n-1,&f);*s=f;}
}
main()
{
int x=0;
fun(4,&x);
printf("%d\n",x);
}
程序运行后的输出结果是(    )。

选项 A、3
B、1
C、2
D、4

答案C

解析 本题考查函数的递归调用。将函数参数带入函数中,一步步递归即可得到结果,结果为2。故选项C正确。
转载请注明原文地址:https://kaotiyun.com/show/fmtp777K
0

最新回复(0)