Skip to content

附录 D · 学习路径与备考规划 ​

面向零基础考生的一级通关路线:知识地图 → 三阶段路径 → 6 周计划 → 自测清单 → 考场时间分配。


一、一级知识地图 ​

                    ┌─────────────────────────────┐
                    │   第1章  总览 · 考纲全景    │
                    └──────────────┬──────────────┘
                                   │
        ┌──────────────┬───────────┼───────────┬──────────────┐
        │              │           │           │              │
   ┌────▼────┐   ┌─────▼────┐ ┌────▼────┐ ┌───▼─────┐  ┌─────▼─────┐
   │ 第2章    │   │ 第3章     │ │ 第4章   │ │ 第5章   │  │ 第6章     │
   │ 计算机   │   │ 编程规范  │ │ 基础语法 │ │ 数据类型│  │ 三大结构  │
   │ 基础/IDE │   │ 框架/括号 │ │ 标识/变量│ │ int/char│  │ if/for    │
   └─────────┘   └──────────┘ └─────────┘ └─────────┘  └───────────┘
        │              │           │           │              │
        └──────────────┴───────────┼───────────┴──────────────┘
                                   │
                    ┌──────────────▼──────────────┐
                    │  第7章 运算符(贯穿全篇)   │
                    └──────────────┬──────────────┘
                                   │
                    ┌──────────────▼──────────────┐
                    │  第8章 输入输出(程序入口) │
                    └──────────────┬──────────────┘
                                   │
                    ┌──────────────▼──────────────┐
                    │  第9章 编程题实战(50 分)  │
                    └─────────────────────────────┘

依赖关系:第3章(框架)→ 第4章(变量)→ 第5章(类型)→ 第6章(结构)→ 第8章(输入输出)→ 第9章(实战)。第7章(运算符)与第4~6章穿插学习。


二、三阶段学习路径 ​

阶段目标章节产出
阶段一:能跑起来装好环境、会写框架、能编译运行第2、3章独立写出 Hello World 并成功运行
阶段二:会算会存掌握变量、类型、运算符、输入输出第4、5、7、8章能写"输入两个数求它们的和与积"
阶段三:会控流程掌握三大结构 + 编程题套路第6、9章能独立完成 2 道编程大题

三、6 周计划(每天 30~45 分钟) ​

周次学习章节重点任务周末自测
第 1 周第1、2章认识计算机软硬件;装好 Dev-C++;F9/F10/F11 三个快捷键练熟第2章 15 题 ≥ 12 对
第 2 周第3章背下程序框架四件套;大括号、分号、注释规矩第3章 12 题 ≥ 10 对
第 3 周第4章标识符规则、关键字表、变量声明初始化第4章 10 题 ≥ 8 对
第 4 周第5章int/long long 范围、char 单引号、bool 非 0 即真第5章 12 题 ≥ 10 对
第 5 周第6、7章三大结构 + 全部运算符;重点攻克整数除法与 =/==第6章 9 题 + 第7章 10 题 ≥ 15 对
第 6 周第8、9章cin/scanf(别漏 &)、printf 格式符;刷完编程题七大套路第8章 10 题 + 第9章 7 题 ≥ 14 对;完整做 2 道编程题

💡 若时间更紧,可压缩为 4 周:把第2、3章合并,第4、5章合并,第6、7章合并,第8、9章合并。


四、自测清单(考前逐项打勾) ​

基础与环境 ​

  • [ ] 能默写程序框架四件套(#include / using namespace std; / int main() / return 0;)
  • [ ] 知道 #include 行不加分号
  • [ ] 知道哪些行不加分号(#include、函数头、右大括号后)
  • [ ] 能区分编译错误和逻辑错误,会用"加 cout"调试

语法与数据 ​

  • [ ] 能判断一个标识符是否合法(不能数字开头、不能含 -、不能是关键字)
  • [ ] 知道 C++ 区分大小写
  • [ ] 变量声明时一定初始化(避免垃圾值)
  • [ ] 知道 int 约 ±21 亿,求和一律用 long long
  • [ ] 字符用单引号 'A',字符串用双引号 "A"

运算与控制 ​

  • [ ] 整数除法会截断:5 / 2 == 2;要小数写 5.0 / 2
  • [ ] 判等用 ==,if 里出现单个 = 立刻警觉
  • [ ] && / || 两边写成完整条件
  • [ ] switch 每个 case 后写了 break
  • [ ] 分清 break(跳出整个循环)与 continue(跳过本轮)
  • [ ] 知道 while 可能 0 次、do-while 至少 1 次

输入输出 ​

  • [ ] cin >> a; 与 scanf("%d", &a); 都会写,& 没漏
  • [ ] 记住常用格式符:%d、%lld、%c、%f、%lf
  • [ ] 输出严格照抄样例,不加任何提示语

编程题 ​

  • [ ] 会用四步法:读题 → 思路 → 编码 → 测试
  • [ ] 掌握七大套路(求和/计数/数位拆分/最值/范围判断/分支计价/字符处理)
  • [ ] 会处理边界:n = 0、n = 1
  • [ ] 知道"先写能跑的最简版本拿部分分"

五、考场时间分配(120 分钟) ​

时间段用时做什么
0~3 分钟3 min快速浏览全卷,先看两道编程题考什么,心里有底
3~35 分钟32 min做完 15 道单选题(平均每题 2 分钟,卡住的先跳过并标记)
35~55 分钟20 min做完 10 道判断题(平均每题 2 分钟)
55~60 分钟5 min回头检查标记题;填涂/确认客观题答案
60~100 分钟40 min攻克两道编程题(每题约 20 分钟)
100~115 分钟15 min用样例测试;补边界测试(0、1、最大值)
115~120 分钟5 min最后检查:编译是否通过、输出格式是否与样例一致

编程题时间盒(每题 20 分钟) ​

步骤用时内容
读题 + 圈输入输出3 min圈出输入格式、输出格式、样例
想思路 + 选套路3 min属于七大套路中的哪一个
写代码8 min先写四段式骨架,再填逻辑
测试6 min样例 + 边界(0、1、极值)

⚠️ 保底策略:如果 8 分钟还没思路,先写出"读入 + 原样输出"的最简版本,确保能编译通过拿到基础分,再逐步加逻辑。空白 = 0 分,能跑 = 有分。


六、常见备考误区 ​

误区正确做法
只看不敲代码编程是手艺,每个例题都要亲手敲一遍并运行
死记硬背代码理解"为什么这样写",套路比代码重要
忽视输出格式格式错 = 0 分,务必照抄样例
追求难题偏题一级只考基础,把七大套路练熟即可
不测边界n = 0、n = 1 是最高频的失分点
编程题留到最后编程题占 50 分,必须留足 40 分钟

七、通过之后:向二级衔接 ​

拿到一级证书只是起点。二级在一级之上新增了八大知识块,其中"计算机基础 + 程序逻辑复杂化"是两条主线。本节给出衔接地图、自测题与两周过渡计划,方便无缝接上《GESP 二级备考白皮书》。

7.1 一级 → 二级:新增内容对照 ​

一级已掌握(可直接沿用)二级新增(必须新学)
程序框架、main、头文件① 计算机存储与网络:ROM/RAM/CACHE、网络分类、OSI 七层与 TCP/IP 四层、IP 地址与子网掩码
标识符、关键字、变量、常量② 程序设计语言:机器/汇编/高级语言,编译型 vs 解释型,编辑→编译→链接→运行
int/long long/double/char/bool③ 流程图:六种标准符号,读流程图算结果
顺序 / 分支 / 循环④ ASCII 编码:'0'=48、'A'=65、'a'=97 三个锚点,大小写 ±32,数字字符转数值
算术 / 关系 / 逻辑 / 三目⑤ 数据类型转换:隐式转换规则、强制转换、整数除法陷阱
cin/cout/scanf/printf⑥ 多层分支:if-else if 阶梯、嵌套 if、switch 与 break 穿透
编程题七大基础套路⑦ 多层循环:嵌套循环、图形打印、枚举、break/continue
——⑧ 数学函数:abs/sqrt/pow/max/min/rand+srand

💡 难度跃迁一句话:一级考"能不能写对",二级考"能不能把逻辑写复杂"——嵌套、多分支、字符与编码计算,是二级的三大分水岭。

7.2 衔接自测:6 道"二级预备题" ​

做完再看答案,错 3 道以上建议先补对应章节再进入二级。

自测 1(单选题) 表达式 '5' - '0' 的值是( ) A. 5 B. 53 C. 48 D. 0

自测 2(单选题) 执行 int a = 5, b = 2; double c = a / b; 后,c 的值是( ) A. 2.5 B. 2 C. 2.0 D. 不确定

自测 3(判断题) switch 语句中每个 case 后若不加 break,会继续执行下一个 case 的语句。( )

自测 4(判断题) RAM 断电后数据不丢失。( )

自测 5(程序阅读题) 下面程序输出什么?

cpp
#include <iostream>
using namespace std;
int main() {
    for (int i = 1; i <= 3; i++) {
        for (int j = 1; j <= i; j++) cout << "*";
        cout << endl;
    }
    return 0;
}

自测 6(编程题) 输入两个整数 a、b,输出 a 的 b 次方(用 pow 或循环均可,1 ≤ a, b ≤ 10)。

🔑 点击查看答案与解析

答案: 1-A 2-C 3-正确 4-错误 5-见下 6-见下

解析:

  1. A:数字字符转数值就是减 '0':'5'(53) − '0'(48) = 5。
  2. C:a / b 两边都是 int,先按整数除法得 2,再赋给 double 变成 2.0。想要 2.5 必须写成 a * 1.0 / b。
  3. 正确:这就是 case 穿透(fall through),二级必考。
  4. 错误:RAM 是易失性存储器,断电丢失;ROM 才不丢失。
  5. 输出直角三角形:
    *
    **
    ***
    外层 i 控制行(1~3),内层 j 控制每行 i 个星号——外层管行、内层管列,这是二级图形打印的核心套路。
  6. 参考代码:
    cpp
    #include <iostream>
    using namespace std;
    int main() {
        int a, b;
        cin >> a >> b;
        int ans = 1;
        for (int i = 1; i <= b; i++) ans *= a;   // 连乘 b 次
        cout << ans << endl;
        return 0;
    }

7.3 两周过渡计划 ​

周次重点目标
第 1 周ASCII 与字符运算、数据类型转换、数学函数看到 'A' + 32 能秒答;整数除法不再踩坑
第 2 周多层分支(switch 穿透)、嵌套循环(图形打印、枚举)能独立写出九九乘法表与两层嵌套的枚举程序

📚 完成过渡后,直接进入《GESP 二级备考白皮书》第 1 章(考点总览)即可,本书的一级基础已完整覆盖二级的前置要求。


本规划为建议值,请按自己的实际进度调整;关键是每天都敲代码。

百炼成钢,融会贯通