GESP一文看懂
GESP即CCF编程能力等级认证,由中国计算机学会(CCF)发起并主办,是为青少年计算机编程学习者提供能力验证的平台。今年由于CSP的“年龄限制”GESP报名将会持续火热GESP科学分级,覆盖面宽,学习编程的青少年均可参加认证。
📚 GESP认证:科学分级,权威认证
GESP编程等级认证为不同阶段的编程学习者提供了全面的能力验证体系。无论是初学者,还是有一定基础的编程爱好者,都能在GESP中找到适合自己的级别。
- 图形化编程:适合初学者,分为一至四级,主要考察计算机基础知识和简单的编程逻辑。
- Python编程:分为一至八级,从基础语法到高级应用,逐步提升难度。
- C++编程:同样分为一至八级,是通往信息学竞赛(如CSP-J/S)的重要桥梁。
📅 考试安排:灵活便捷,全年四次机会
GESP每年安排四次认证考试,分别在3月、6月、9月和12月,采用线下集中机考的形式。考生可以根据自己的学习进度和时间安排,灵活选择报考的等级和考试时间。
一年四次 | 认证时间 | 认证级别 |
2025年3月22日 | 上午 9:30 – 11:30 | 1-4级 |
下午 13:30 – 16:30 | 5-8级 | |
2025年6月28日 | 上午 9:30 – 11:30 | 1-4级 |
下午 13:30 – 16:30 | 5-8级 | |
2025年9月27日 | 上午 9:30 – 11:30 | 1-4级 |
下午 13:30 – 16:30 | 5-8级 | |
2025年12月20日 | 上午 9:30 – 11:30 | 1-4级 |
下午 13:30 – 16:30 | 5-8级 |
- 考试时长:1-4级考试时长为2小时,5-8级考试时长为3小时。
- 考试内容:涵盖选择题、判断题和编程题,其中C++编程题采用国际信息学竞赛(IOI)赛制,选手可以多次提交代码,实时获得评测结果。
题目类型 | 数量 | 每题分数 | 总分 |
选择题 | 15道题目 | 2 | 30 |
判断题 | 10道题目 | 2 | 20 |
编程题 | 2道题目 | 2 | 50 |
💰
考试费用:透明合理,逐级递增
GESP的考试费用根据级别逐级递增,具体如下:
- 图形化编程:一级300元/生,四级360元/生。(逐级增加20元)
- Python编程和C++编程:一级300元/生,八级440元/生。(逐级增加20元)
🎯 考试规划:快速进阶,衔接高阶竞赛
GESP不仅是一个认证平台,更是孩子们通往更高层次竞赛的跳板。通过GESP考试达到一定级别和分数,可以直接免去CSP-J/S初赛的资格,直接进入复赛。
- GESP C++ 7级认证成绩≥80分:可申请免CSP-J第一轮认证。
- GESP C++ 8级认证成绩≥60分:可申请免CSP-J第一轮认证。
- GESP++ C 8级认证成绩≥80分:可申请免CSP-J或CSP-S的第一轮认证。
此外,GESP还提供了灵活的跳级机制:
- 无教师推荐:1级90分以上可报名3级,2级90分以上可报名4级,最快1年3个月考满C++八级。
- 有教师推荐:持有PTA及NOI相关证书的教师可推荐考生跨级报考,最快3个月考满C++八级。
由于是由中国计算机学会主办,所以GESP具有较高的公信力和权威性,其考试大纲与CSP-J/S等竞赛紧密相关,能够有效衔接更高层次的竞赛。
💡 常见问题解答
Q1:GESP考试难度如何?是否超纲?
A:GESP考试严格遵循考纲,题目难度与考纲保持一致,不会出现超纲内容。考生无需担心题目难度超出预期。
Q2:如何选择合适的考试级别?
A:考生可以在报名前查看GESP官网的大纲和历年真题,结合自身编程水平进行评估。建议考生根据实际能力选择合适的级别,避免盲目报考。
Q3:可以跳级参加吗?
A:可以!只要每级得分在90分(含)以上,即可跨一级报名考试。
Q4:C++考试系统的交卷方式是怎样的?
A:C++考试系统每一题都有提交按钮,考生需自行点击提交。编程题每次提交后自动显示分数,最多可提交32次,考生可反复提交以优化成绩。
Q5:参加GESP有年龄限制吗?
A:参加GESP的学生没有年龄限制,但通过GESP衔接条件申请参加CSP-J/S第二轮的被认证者需年满12周岁。
家长们可以根据娃娃所学知识内容来对照目前等级程度:
GESP级别 | 知识内容(C++) | 知识目标 |
一级 | 计算机基础与编程环境 计算机历史 变量的定义与使用 基本数据类型(整型、浮点型、字符型、布尔型) 控制语句结构(顺序、循环、选择) 基本运算(算术运算、关系运算、逻辑运算) 输入输出语句 | 掌握顺序、循环、分支的简单程序结构,可以使用集成开发环境进行编程与调试,通过编程基础知识的学习,完成单一功能的程序设计。 |
二级 | 计算机的存储与网络 程序设计语言的特点 流程图的概念与描述 ASCII编码 数据类型的转换 多层分支/循环结构 常用数学函数(绝对值函数、平方根函数、max函数、min函数) | 掌握程序基本设计,能够使用简单数学函数。可以独立完成包含分支语句、循环语句等比较综合的案例,可以使用分支循环嵌套结构。 |
三级 | 数据编码(原码、反码、补码) 进制转换(二进制、八进制、十进制、十六进制) 位运算(与(&)、或(|)、非(!)、异或(^)、左移(<<)、右移(>>)) 算法的概念与描述(自然语言描述、流程图描述、伪代码描述) 一维数组/二维数组与多维数组基本应用 string类函数 枚举法 模拟法 | 掌握数据编码、进制转换、位运算等知识,使用基础的算法能够独立完成使用一维数组或多维数组解决模拟等算法问题。 |
四级 | 函数的定义与调用 形参与实参,作用域 C++值传递 引用传递 递推 排序概念和稳定性 排序算法(冒泡排序、插入排序、选择排序) 文件重定向与文件读写操作 异常处理 | 掌握函数的定义、调用及传参的使用,能够解决递推相关问题。掌握常用排序算法、文件读写和异常处理使用。 |
五级 | 初等数论 C++数组模拟高精度加法、减法、乘法、除法 单链表、双链表、循环链表 欧几里得算法 素数表的埃氏筛法和线性筛法 唯一分解定理 二分查找/二分答案 贪心算法 分治算法(归并排序和快速排序) 递归 | 掌握初等数论,STL模板应用与线性表的知识,二分法、分治法、贪心法的思想,完成指定功能的程序。C++掌握数组模拟高精度的运算。 |
六级 | 简单树与特殊树的定义,构造与遍历 哈夫曼树 完全二叉树 二叉排序树 哈夫曼编码 格雷编码 深度优先搜索算法 宽度优先搜索算法 二叉树的搜索算法 简单动态规划(一维动态规划、简单背包问题) 面向对象的思想 类的创建 栈、链栈、队列、循环队列 | 掌握树的基础知识,能够分辨不同的树,并根据不同的搜索算法进行遍历,掌握简单线性动态规划和简单背包问题。 |
七级 | 数学库常用函数(三角、对数、指数) 复杂动态规划(二维动态规划、动态规划最值优化) 图的定义及遍历 图论算法 哈希表 | 掌握图的定义与遍历相关算法,能使用二维动态规划、动态规划最值优化的知识完成复杂的动态规划算法。 |
八级 | 计数原理 排列与组合 杨辉三角 倍增法 代数与平面几何 算法的时间和空间效率分析 算法优化 | 掌握组合数学中基本知识,通过算法的时间和空间效率分析,可以完成相对应的算法优化。 |