问题 单项选择题

已知递归函数f(n)的功能是计算1+2+…+n,且n≥1,应采用的代码段是______。

A.if n>1 then return 1 else return n+f(n-1)

B.if n>1 then return 1 else return n+f(n+1)

C.if n<1 then return 0 else return n+f(n-1)

D.if n<1 then return 0 else return n+f(n+1)

答案

参考答案:C

解析: 根据题意,f(n)的功能是计算1+2+…+n。因此,f(n-1)=1+2+…+(n-1)=f(n)-n。所以,当n>=1时,f(n)可以表示为f(n-1)+n,当n<l时,不妨令f(n)=0。故本题的4个选项中,只有C符合题意。

单项选择题
单项选择题