A-A+
设有如下函数定义 intfun(intk) { if(k<1)return0: elseif
问题详情
设有如下函数定义 intfun(intk) { if(k<1)return0: elseif(k=1)return1; elsereturnfun(k-1)+1; } 若执行调用语句:n=fun(3);则函数fun总共被调用的次数是
A.2
B.4
C.3
D.5
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:C
这道题目考查了函数的递归调用,当执行调用语句n=fun(3)时,返回n=fun(2)+1,再执行fun(2),返回n=fun(1)+1+1,而fun(1)等于1,所以最后n的值等于3。而函数fun总共被调用了3次。即fun(3),fun(2),fun(1)。