深耕专业教研,探索前沿技术
信息技术来源:宁波“十校”2026届高三3月联考技术试题卷

第 10 题

答案与解析

本题解析

参考答案

D

解题思路

函数 p 在 n==0 时直接返回,否则以 n-1 为第二个参数调用自身。对于本题的非负整数 n,参数逐步减小并到达出口,构成递归。

程序分析

def p(x,n):
    if n==0:
        return 2
    else:
        return x * p(x,n-1)

出口返回值为 2。每个未到出口的调用都要先取得 p(x,n-1) 的返回值,再乘以 x 后向上一层返回。因此,从 n 递减至 0 后,返回阶段会在 2 的基础上连续乘 n 次 x,得到 2×xⁿ。

执行 k=p(3,2) 时,调用依次展开为 p(3,2)→p(3,1)→p(3,0)。返回阶段:

p(3,0)=2;
p(3,1)=3×2=6;
p(3,2)=3×6=18。

因此赋给 k 的值为 18。