以下程序的输出结果是 long fun( int n) { long s; if(n==1||n==2)s=2; else s=n-fun(n-1); retu

17 查阅

以下程序的输出结果是

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。

计算机二级