Appearance
附录 A · 考纲 ↔ 章节对照矩阵
本附录把《CCF GESP C++ 编程一级标准》与本书章节逐项对照,用于查漏与考前定位。 依据:
GESP考试大纲.pdf「C++ 编程一级标准」全文(知识点详述 (1)~(13)、知识块 7 项、知识点描述、题型分布)。 本书仅面向 C++:考纲中并列的 Python 一级内容(Turtle 绘图、import/from、input()/print() 等)一律不纳入,正文亦无任何 Python 描述。 📚 章号口径(9 章制):第 1 章 = 一级考点总览,第 2~9 章 = 考纲八大知识块(与二级~五级口径一致)。
一、考试概况(全套白皮书基线)
📌 按本书体例,考试信息只在"一级"集中说明;二级及以上不再单列"考试概况"章,需要时在各册附录内附题型分值表。
| 项目 | 内容 |
|---|---|
| 认证名称 | CCF 编程能力等级认证(GESP)· C++ 编程 一级 |
| 考试语言 | C++(以 C++11 标准为准;考题不涉及该标准下的未定义行为) |
| 考试时长 | 120 分钟 |
| 满分 | 100 分 |
| 及格线 | 60 分 |
题型分布
| 题型 | 题量 | 单题分值 | 小计 | 主要覆盖 |
|---|---|---|---|---|
| 单选题 | 15 道 | 2 分 | 30 分 | 概念辨析、语法规则、读程序选结果 |
| 判断题 | 10 道 | 2 分 | 20 分 | 概念正误、易混点辨析 |
| 编程题 | 2 道 | 25 分 | 50 分 | 完整程序编写(输入 → 处理 → 输出) |
💡 分值策略:编程题占 一半分值(50 分),且每题 25 分按测试点给分(部分正确也有分)。因此"能写出会跑的最简版本"比"追求完美"更划算——详见第9章。
考核目标(考纲原文精神)
学生通过计算机基础知识的学习,了解计算机的构成与操作以及计算机的发展历程;通过编程基础知识以及语句的掌握,可以独立完成简单功能的顺序结构、分支结构、循环结构的程序。
二、知识点详述 (1)~(13) 逐条对照
| # | 考纲知识点详述 | 本书对应章节 | 状态 |
|---|---|---|---|
| (1) | 了解计算机的基本构成(CPU、内存、I/O 设备等);了解 Windows、Linux 等操作系统基本概念和常见操作;了解计算机的历史及在现代社会中的常见应用 | 第2章 「一、计算机的"身体":认识硬件组成」、「二、计算机的"灵魂":软件与操作系统」、「四、计算机的"成长史":四代发展简览」 | ✅ |
| (2) | 熟悉集成开发环境使用(例如 Dev C++):创建文件、编辑文件、保存文件、编译、解释、调试 | 第2章 「五、认识 C++ 与 Dev-C++」、「六、编译、运行与调试:让 C++ 程序"跑起来"」、「七、动手:在 Dev-C++ 里敲出第一个程序」 | ✅ |
| (3) | 掌握基础的 cin 语句、scanf 语句、cout 语句、printf 语句、赋值语句等 | 第8章 「二、cout:C++ 的"小喇叭"📢」、「三、cin:C++ 的"小耳朵"👂」、「四、printf:格式化输出的"老管家"🎩」、「五、scanf:格式化输入,千万别漏 & 🚨」;第4章 §4.2 | ✅ |
| (4) | 掌握标识符、关键字、常量、变量、表达式的概念 | 第4章 「一、标识符:给"盒子"起的名字」、「二、关键字:C++ 保留的"专用词"」、「三、常量:固定不变的量」、「四、变量(重点):贴了标签的盒子」、「五、表达式:能算出一个值的式子」 | ✅ |
| (5) | 掌握常量与变量的命名、定义、作用、初始化与赋值以及变量的自加与自减运算 | 第4章 「四、变量(重点):贴了标签的盒子」、「六、自增 ++ 与自减 --:计数小能手」;第7章 「五、自增 ++ 与自减 --:数数小印章 🖊️」 | ✅ |
| (6) | 掌握基础算术表达式:加、减、乘、除、整除、求余 | 第7章 「二、算术运算符:加减乘除的"升级版"」 | ✅ |
| (7) | 掌握逻辑运算与(&&)、或(||)、非(!) | 第7章 「四、逻辑运算符:把条件"连"起来」 | ✅ |
| (8) | 掌握关系运算:大于、大于等于、小于、小于等于、等于、不等于 | 第7章 「三、关系运算符:计算机的"小裁判"」 | ✅ |
| (9) | 掌握基础的数据类型的定义和使用(整型、实数型、字符型、布尔型) | 第5章 「二、整数型:int 与 long long」、「三、实数型:float 与 double」、「四、字符型 char:只装"一个字符"」、「五、布尔型 bool:只会回答"真"和"假"」 | ✅ |
| (10) | 掌握顺序结构程序的编写 | 第6章 「二、顺序结构:从上到下,一行一行」 | ✅ |
| (11) | 掌握分支结构程序的编写,掌握 if、if-else、switch 语句,了解三目运算 | 第6章 「三、分支结构:让程序学会"做选择"」;第7章 「七、三目运算符 ? ::迷你小岔路 🛤️」 | ✅ |
| (12) | 掌握循环结构程序的编写,掌握 for、while、do-while 循环语句的使用以及 continue 语句和 break 语句在循环中的应用 | 第6章 「四、循环结构:让程序学会"重复劳动"」 | ✅ |
| (13) | 理解程序的注释和调试的概念 | 第3章 「五、注释:写给人看的"小纸条" 🔥」;第2章 §6.3 | ✅ |
结论:知识点详述 13 条 → 13/13 全覆盖,无漏项。
三、知识块(7 项)对照
| # | 考纲知识块 | 考纲知识点 | 本书章节 | 状态 |
|---|---|---|---|---|
| 1 | 计算机基础知识 | 计算机的软硬件组成、常见操作、发展历程 | 第2章 | ✅ |
| 2 | 集成开发环境 | 创建文件、编辑文件、保存文件、编译、解释、调试 | 第2章 「五、认识 C++ 与 Dev-C++」~「七、动手:在 Dev-C++ 里敲出第一个程序」 | ✅ |
| 3 | 结构化程序设计 | 顺序结构、分支结构、循环结构 | 第6章 | ✅ |
| 4 | 程序的基本语句 | cin、scanf、cout、printf、赋值语句、复合语句、if、switch、for、while、do while | 第8章;第6章 「三、分支结构:让程序学会"做选择"」、「四、循环结构:让程序学会"重复劳动"」;第3章 §3.3 | ✅ |
| 5 | 程序的基本概念 | 标识符、关键字、常量、变量、表达式的概念;常量与变量的命名、定义、作用;程序的注释 | 第4章;第3章 「五、注释:写给人看的"小纸条" 🔥」 | ✅ |
| 6 | 基本运算 | 算术运算、逻辑运算、关系运算、变量自增与自减运算、三目运算 | 第7章 | ✅ |
| 7 | 基本数据类型 | 整数型 int、long long;实数型 float、double;字符型 char;布尔型 bool | 第5章 | ✅ |
结论:知识块 7 项 → 7/7 全覆盖。
四、考点级查漏表(知识点描述逐项)
| 考纲知识点 | 本书落点 | 备注 |
|---|---|---|
| CPU / 内存 / I/O 设备 | 第2章 §1.1、§1.2 | 内存断电丢失 vs 硬盘长期保存 = 头号易错 |
| 操作系统常见操作 | 第2章 §2.1 | 文件后缀名(.cpp / .exe) |
| 计算机发展历程 | 第2章 「四、计算机的"成长史":四代发展简览」 | 四代 + 两位"计算机之父" |
| Dev-C++ 创建/编辑/保存 | 第2章 §5.3 | |
| 编译 / 运行 / 调试 | 第2章 「六、编译、运行与调试:让 C++ 程序"跑起来"」 | F9 编译、F10 运行、F11 编译运行 |
cin / cout | 第8章 「二、cout:C++ 的"小喇叭"📢」、「三、cin:C++ 的"小耳朵"👂」 | 需 <iostream> + using namespace std; |
scanf / printf | 第8章 「四、printf:格式化输出的"老管家"🎩」、「五、scanf:格式化输入,千万别漏 & 🚨」 | scanf 漏 & = 天字号陷阱 |
赋值语句 = | 第4章 §4.2 | 与 == 的区分见第7章 §3.1 |
| 复合语句 | 第3章 §3.3 | 大括号打包多条语句为一条 |
| 标识符命名规则 | 第4章 「一、标识符:给"盒子"起的名字」 | 字母/下划线开头,区分大小写 |
| 关键字 | 第4章 「二、关键字:C++ 保留的"专用词"」 | 不可作标识符 |
常量(const / 字面常量) | 第4章 「三、常量:固定不变的量」 | |
| 变量声明/初始化/赋值 | 第4章 「四、变量(重点):贴了标签的盒子」 | 未初始化 = 垃圾值 |
| 表达式 | 第4章 「五、表达式:能算出一个值的式子」 | |
自增 ++ / 自减 -- | 第4章 「六、自增 ++ 与自减 --:计数小能手」;第7章 「五、自增 ++ 与自减 --:数数小印章 🖊️」 | 一级只考单独成行 |
算术 + - * / % | 第7章 「二、算术运算符:加减乘除的"升级版"」 | 整数除法截断 = 一级第一大陷阱 |
关系 > >= < <= == != | 第7章 「三、关系运算符:计算机的"小裁判"」 | |
逻辑 && || ! | 第7章 「四、逻辑运算符:把条件"连"起来」 | 两边必须写完整条件 |
三目 ?: | 第7章 「七、三目运算符 ? ::迷你小岔路 🛤️」;第6章 §3.5 | 考纲为"了解" |
复合赋值 += -= *= /= %= | 第7章 「六、复合赋值运算符:偷懒的小能手 😴」 | |
int / long long | 第5章 「二、整数型:int 与 long long」 | 溢出、范围 |
float / double | 第5章 「三、实数型:float 与 double」 | 近似存储 |
char | 第5章 「四、字符型 char:只装"一个字符"」 | 单引号、只装一个字符 |
bool | 第5章 「五、布尔型 bool:只会回答"真"和"假"」 | 非 0 即真 |
注释 // /* */ | 第3章 「五、注释:写给人看的"小纸条" 🔥」 | # 不是注释 |
| 顺序结构 | 第6章 「二、顺序结构:从上到下,一行一行」 | |
if / if-else / else if | 第6章 §3.1~3.3 | |
switch | 第6章 §3.4 | 漏 break 穿透 |
for / while / do-while | 第6章 §4.1~4.3 | |
break / continue | 第6章 §4.4 |
五、编程题主线(50 分攻略)
一级编程题的骨架高度固定,第9章归纳了七大高频套路:
| 套路 | 核心模板 | 对应章节 |
|---|---|---|
| ① 求和 / 求平均 | 循环 + 累加器(long long sum = 0;) | 第9章 「二、一级编程题七大高频套路(附模板代码)」 |
| ② 计数统计 | 循环 + if 判定 + 计数器 | 第9章 「二、一级编程题七大高频套路(附模板代码)」 |
| ③ 数位拆分 | n % 10 取末位,n / 10 去末位 | 第7章 §9.1 |
| ④ 找最值 | 打擂台:if (x > mx) mx = x; | 第9章 「二、一级编程题七大高频套路(附模板代码)」 |
| ⑤ 闰年 / 范围判断 | 关系 + 逻辑综合 | 第7章 §9.2 |
| ⑥ 分支计价 / 分段 | if...else if...else | 第6章 §3.3 |
| ⑦ 字符处理 | 'a' - 'A' = 32、大小写转换 | 第5章 §4.3 |
⚠️ 输出格式:题目要求什么就输出什么,不要输出任何提示语("请输入""答案是"等一律不加),否则 0 分。
六、边界声明(一级"不考"清单)
以下内容超出一级考纲,本书仅作拓展了解,均已标注「📚 拓展 · 超纲」:
| 内容 | 实际所属级别 | 本书位置 |
|---|---|---|
| 进制转换(二进制、除 2 取余法) | 三级 | 第2章 「三、进制与存储单位(📚 拓展 · 超纲)⭐」 |
| 存储单位换算(Byte / KB / MB) | 二级 | 第2章 「三、进制与存储单位(📚 拓展 · 超纲)⭐」 |
| ASCII 编码 | 二级 | 第5章 §4.2 |
| 数据类型转换(隐式/显式) | 二级 | 第5章 「九、深度专题(📚 拓展 · 超纲):类型转换——不同类型的盒子怎么"打交道"」 |
| 多层分支 / 嵌套循环 | 二级 | 第6章 「三、分支结构:让程序学会"做选择"」拓展 |
| 短路求值 | 提高内容 | 第7章 「四、逻辑运算符:把条件"连"起来」拓展 |
| 数组、函数、结构体、指针 | 二级及以后 | 本书不涉及 |
| 算法(枚举、模拟、排序等) | 三级及以后 | 本书不涉及 |
七、章节 ↔ 考纲 速查(反向索引)
| 本书章节 | 主题 | 覆盖考纲编号 |
|---|---|---|
| 第1章 | 总览:考纲全景与备考规划 | —— |
| 第2章 | 计算机基础知识与开发环境 | (1)(2) / 知识块 1、2 |
| 第3章 | 编程规范 | (13) / 知识块 4(复合语句)、5(注释) |
| 第4章 | 基础语法:标识符、关键字与变量 | (4)(5) / 知识块 5 |
| 第5章 | 基本数据类型 | (9) / 知识块 7 |
| 第6章 | 三大基本结构 | (10)(11)(12) / 知识块 3 |
| 第7章 | 运算符 | (6)(7)(8) / 知识块 6 |
| 第8章 | 输入输出与头文件 | (3) / 知识块 4 |
| 第9章 | 编程题实战与综合应用 | 综合应用(50 分编程题) |
本附录随正文同步维护;如考纲更新,以最新官方大纲为准。
