考试
2021-01-07 12:29:49

以下程序执行后的输出结果是________。

题目描述

以下程序执行后的输出结果是________。

#include <stdio.h>

fun(int x)

{int p;

if(x==0||x==1)return(3);

p=x-fun(x-2);

return p;}

main()

{ printf(“%d\n”,fun(9));}

答案解析

[db:答案解析]

7解析:本程序主要运用了函数的递归调用,程序的执行过程为:x=9,p=9-fun(7)→x=7,p=7-fun(5)→x=5,p=5-fun(3)→x=3,p=3-fun(1)→fun(3)=3-3=0→fun(5)=5-0=5→fun(7)=7-5=2→fun(9)=9-2=7,所以经过函数递归,程序最后输出的结果为7。

加载中...
AI正在思考中,请稍候...