A-A+

设有如下函数定义 intfun(intk) { if(k<1)return0: elseif

2022-08-12 18:54:46 问答库 阅读 197 次

问题详情

设有如下函数定义 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)。

考点:函数,定义