GESP 八级 · GESP 202512 C++ 八级 第 12 题

选择题 · 答案 B · 考点:函数与递归、动态规划

← 整套速查表 GESP 八级 全部真题

题目

当输入 $6$ 时,下列程序的输出结果为( )。

#include <iostream>
using namespace std;

int f(int n) {
    if (n <= 3) return n;
    return f(n - 1) + f(n - 2) + 2 * f(n - 3);
}

int main() {
    int n;
    cin >> n;
    cout << f(n) << endl;
    return 0;
}
答案:B

考点

函数与递归动态规划 讲解 →动态规划 真题汇总 →

解题思维

模拟程序执行过程,逐行跟踪变量变化,特别关注循环边界和递归终止条件。

常见错误

模拟执行时注意:① 循环变量的起始和终止值;② 递归的边界条件;③ 数据类型转换和精度问题。

详细解析(节选)

【考点】递归|动态规划|整数运算

🎯 考纲定位

GESP 八级《算法与程序设计》模块,递归与递推关系。命题人卡住的是"不会展开递归式计算"——八级要求理解递归调用栈的展开过程,但考场里 80% 考生直接写代码跑,不会手算验证,遇到复杂递归式就懵了。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断