首页 > 试题广场 >

对于以下递归函数f,调用f (4),其返回值为( )。

[单选题]
对于以下递归函数f,调用f (4),其返回值为()
int f (int n) {   
    if (n)    
        return f (n -1) + n;
    else return n;
  • 10
  • 4
  • 0
  • 以上均不是
4+3+2+1+0=10
f(4)---f(3)+4
         f(3)----f(2)+3
                    f(2)----f(1)+2
                              f(1)----f(0)+1
                                         f(0)-----0     0+1+2+3+4
发表于 2018-12-11 20:36:34 回复(3)
这道题少了大括号的右部分,也能运行?牛客好奇怪,有些题就故意说考你符号,有些符号有问题就不是那么一回事。
发表于 2021-02-23 18:59:30 回复(1)
当n=0的时候,不是false了吗,false了不是应该走else了么,n又没有发生赋值,为什么要加起来啊,应该return n才对啊,你是4啊
发表于 2021-02-27 22:06:56 回复(1)
算的思路是对的,但是算错了,0+1+2+3+4=7?/笑哭
发表于 2019-06-13 05:01:03 回复(0)
为什么零是出口啊
发表于 2020-06-30 16:03:24 回复(2)
难道是n*n-n
发表于 2018-09-28 02:05:29 回复(0)
难道是 4+3+2+1?

发表于 2018-07-19 19:47:00 回复(0)
大括号不完整啊
发表于 2018-06-08 14:10:10 回复(1)