问题 单项选择题

以下程序的输出结果是( )。 #include<iostream.h> long fun(int n) {long s; if(n==1||n==2)s=2; else s=n-fun(n-1); return s; } voidmain(){cout<<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。

判断题
单项选择题