测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A27624. 阅读下面代码,输出的结果是( )def f(n): if n <= 1: return n return f(n-2)*2 - f(n-1) + n print(f(5))

填空题 较易

题目描述

阅读下面代码,输出的结果是( )

def f(n):
    if n <= 1:
        return n
    return f(n-2)*2 - f(n-1) + n
print(f(5))

参考答案

11

答案解析

本题考查函数递归,递归出口条件为n<=1,过程模拟如下:

f(5) = f(3)*2 - f(4)+5

f(3) = f(1)*2 - f(2)+3

f(2) = f(0)*2 - f(1)+2

f(0) = 0,f(1) = 1

f(2) = 0*2 - 1+2 = 1

f(3) = 1*2 - 1+3 = 4

f(4) = f(2)*2 - f(3)+4 = 1*2 - 4+4 = 2

f(5) = 4*2 - 2+5 = 11

上一题 下一题