问题 单项选择题

以下程序的输出结果是
long fun(int n)
long s;
if(n==1||n==2)s=2;
else s=n-fun(n-1);
return s;
main()
printf("%ld\n",fun(3));

A.1

B.2

C.3

D.4

答案

参考答案:A

解析: 该题考查的是递归函数的调用,题中读fun函数进行了递归调用,第1次调用:fun(3)n= 3 s=3-fun(2)第二次调用时:fun(2)n=2 s=2返回第一次调用后,s=3-2=1。

单项选择题 B1型题
单项选择题