2025年3月22日,CCF-GESP编程能力等级认证考试如期举行。考后不到一小时,我的微信就炸了——好几个学生家长发来消息:“老师,孩子说有一道题是让角色亮度变暗,他用了‘将颜色特效增加’,是不是错了?”“有一题问保留两位小数,平时好像没讲过啊。”作为带过多年图形化编程考级的辅导老师,我第一时间按学生反馈把2025年03月Scratch图形化编程一级的题目细节做了还原和复盘。这篇内容就是一份完整的真题解析,覆盖题型分布、客观题命题逻辑、编程题完整作答过程、考场高频翻车点,以及从这套题里梳理出的备考方向。不管你是正在准备下一次考试的孩子,还是给孩子做考前辅导的家长、机构老师,看完之后应该都能对“一级到底考什么、怎么练不丢分”有一个非常清晰的判断。
1. 先看整体:2025年03月一级考试的题型分布与难度变化
1.1 一级机考到底怎么考
CCF-GESP一级Scratch考试全程在计算机上完成,考试系统内置Scratch编辑器,考生直接在编辑器里拖拽积木答题。整场考试由两部分构成:客观题(单选题与判断题)和编程题。客观题在页面上直接点选答案,编程题需要在规定时间内完成指定效果并提交作品。由于是全机考,很多孩子第一次接触考试系统,连题目切换、积木查找都要适应半天,这本身就是一种隐性时间成本。带过考级模拟测试的老师应该都有同感:明明平时Scratch玩得很溜,一上考试系统,操作速度至少慢三分之一。
从这次考生反馈来看,客观题数量延续了往年体量,编程题为两道,整体时间并不算紧张。但问题恰恰出在“不紧张”上——不少孩子做完客观题后反复犹豫,结果留给编程题的时间被压缩,最后一题匆忙提交。我的建议是:客观题一遍过,拿不准的先标记,等编程题全部做完再回头纠结,至少要把整场考试三分之一的时间留给编程题。
这次考试中还有个现象值得注意:有考生反馈说编程题里角色比较多,背景也是题目素材里自带的,如果不小心把角色或者背景删掉了,后面要找回就很麻烦。考试系统里虽然允许重新选择角色,但重新选择角色后脚本会全部清空,等于白做。这个细节我在后面“考场翻车实录”那一章会专门展开说。
1.2 2025年3月考题风格的三点明显变化
结合我带学生的考后反馈以及和同行交流的信息,这次一级题目和往年相比,有三点变化非常明显。
第一,细节型知识点占比明显上升。往年考试更多考“积木是干什么用的”,今年直接考“亮度特效是什么范围”“四舍五入之后的结果是什么类型”“旋转方式会影响什么”。这些都是平时搭积木做作品时很少单独拿出来想的功能点,对机械记忆型考生很不友好,但对真正理解积木逻辑的孩子来说反而容易得分。
第二,跨模块组合成为主流。单看每一道题,考的都是基础积木,但题目会把“随机数”和“移到鼠标指针”结合在一起,或者把“变量”和“条件判断”放进同一个场景里。这种组合方式以前更多出现在二级题目里,这次在一级客观题和编程题里都出现了。换句话说,一级考试已经不再满足于“认识积木”,开始考察“积木之间的逻辑关系”。
第三,编程题的题干变长了。题目描述不再只有一句话“让角色移动”,而是给了一个比较完整的情境,比如角色要从什么地方出发、经过什么位置、做什么动作、最后还要发出声音。功能点拆出来有三四个,很多孩子读完题只记得最后一步,前面的要求全漏了。这个变化对读题习惯提出了更高要求。
这三点变化结合在一起,释放了一个明确信号:GESP一级正在从“知道是什么”向“知道怎么用”过渡。后面我会用具体题目来说明这种信号在答题时如何体现。
1.3 题型与模块分值分布
根据考生反馈归总,这次一级考试的大致题型分布如下表:
| 题型 | 题量/分值 | 主要覆盖模块 | 难度印象 |
|---|---|---|---|
| 客观题(单选+判断) | 约20题 | 运动、外观、事件、控制、运算、变量 | 细节题占比变高 |
| 编程题第1题 | 约10分 | 事件、运动、外观、声音 | 中规中矩,强调完整性 |
| 编程题第2题 | 约15-20分 | 事件、控制、运算、变量、侦测 | 模块组合逻辑加强 |
这个分布和往年比,最直观的区别是客观题不再“白给”。往年很多客观题只要拖过积木就能秒选,今年需要真正理解模块特性才能保证全对。编程题方面,第1题依然是比较基础的动画类题目,第2题则出现了明显的逻辑嵌套。整套卷子的核心逻辑是:不追求算法难度,但要求对基础积木有准确理解,并且能在多个模块之间灵活切换。准备6月份考试的同学,可以先按这个方向去复习。
2. 客观题拆解:坐标、亮度与小数运算里的“白给分”和“埋伏”
2.1 坐标与方向:一道“迷路”的送分题
先还原一道这次考试里很典型的坐标题。题目情境大概是这样:角色初始位置在舞台中央,也就是x坐标为0、y坐标为0的位置。执行下面这段脚本后,角色的最终位置在哪里?
当绿旗被点击 面向 90 方向 移动 100 步 将x坐标增加 -50考点拆开看就两个:第一,面向90方向是什么方向;第二,“移动100步”和“将x坐标增加-50”分别对坐标造成什么影响。Scratch的方向规则里,90方向对应舞台右侧,移动100步表示向右侧移动,x坐标从0变成100。紧接着“将x坐标增加-50”,x坐标就从100变成50,y坐标始终是0。所以正确答案应该是(50,0)。
这道题难吗?不难。但我在考后问了好几个孩子,有不少人选了(100,0)。原因很简单——他们看到“移动100步”就直接选了答案,后面那个“将x坐标增加-50”被无视了。这种丢分不是不会,是执行顺序意识不够。Scratch积木是逐块执行的,从上到下每一块都会生效,只看中间某一块必然出错。
还有一种变形考法是把“面向90方向”换成“面向-90方向”或者“面向0方向”。-90方向是舞台左侧,移动100步会让x坐标变成-100;0方向是正上方,y坐标变成100。方向、步数、坐标正负这三个要素必须能互相换算,这是运动模块最核心的基础。建议备考时把这组对应关系写在本子上:90右、-90左、0上、180下。
2.2 外观模块:亮度特效不是“颜色特效”
这次考后搜索量很高的一个词是“scratch亮度”,说明很多考生在这道题上栽了跟头。题目大致还原如下:想让角色在演出开始时慢慢变亮,应该使用下列哪个积木?
选项里会出现“将颜色特效增加”“将亮度特效增加”“将亮度特效设为-50”“将虚像特效增加”这类干扰项。
正确答案是“将亮度特效增加”。表面上看很简单,实际错选“颜色特效”的孩子非常多,原因是他们平时很少使用亮度特效,压根不知道颜色和亮度是两个独立参数。Scratch外观模块里,颜色特效控制色相变化,范围大致是0到200;亮度特效控制明暗,范围是-100到100,数值越小越暗,越大越亮,到100是纯白,到-100接近纯黑。“让角色变暗”应该用“将亮度特效设为-50”或“将亮度特效增加-50”;“让角色变亮”应该用“将亮度特效增加”配合正数。
这道题还连带暴露了另一个问题:很多孩子分不清“设置”和“增加”。“设为”是直接把数值变成指定值,“增加”是在当前值基础上加一个数。两者在效果上有本质区别,尤其在做渐变效果时,只用“设为”做不出连续变化。这次考试同时考了这组概念,就是要把“拖积木”和“理解积木”区分开。
另外一个容易忽略的点是,亮度特效是叠加在角色外观上的,不会自动恢复。如果一道编程题里先用了“亮度特效设为-80”让角色变暗,后续没有做“亮度特效设为0”的复位,角色就会一直处于昏暗状态。这个特性在考试里不会直接考文字题,但在编程题结果验证时非常致命,我会在第四章详细说排查方法。
2.3 运算模块:四舍五入与“保留两位小数”的经典组合
“scratch怎么保留两位小数”也是这次考后搜索热度很高的词,对应的大概率是一道运算模块题目。Scratch本身没有“保留两位小数”的独立积木,但可以通过四舍五入积木实现,具体做法是:
- 先把原数字乘以100;
- 再用“四舍五入”积木取整;
- 最后除以100。
举个例子:要把1.876保留两位小数,先计算1.876 × 100 = 187.6,四舍五入得到188,再除以100得到1.88。中间任何一步顺序错了,结果都不对。这道题考的不是能不能算出1.88,而是能不能想到“通过乘除变换把结果调整到任意小数位数”。很多孩子只知道四舍五入积木的结果是整数,却不会把它套用到“保留两位小数”场景里。
运算模块这次还出现了一个和“随机数”相关的题目,大意是“生成一个1到10之间的随机整数”,正确积木是“在1和10之间取随机数”。看起来很简单,但要注意随机数的上下限是被固定为整数还是允许小数。这里有一个常见误区:如果题目明确要求“随机整数”,就不能去选“在1.5和9.5之间取随机数”之类的选项,因为范围边界不是整数会导致结果不满足要求。
运算模块整体上延续了“不难但细致”的风格,重点集中在加减乘除、随机数、比较运算和逻辑运算这几类。备考时不需要做复杂计算,但一定要把每个积木的输出类型搞清楚——是数字、布尔值还是文本。这次考试中至少有两道客观题就是围绕“输出类型”设计的。
2.4 客观题里的高频陷阱词
结合这次考试和历年真题,我把一级客观题里反复出现的“陷阱词”整理成了表格,方便考前集中过一遍:
| 陷阱类型 | 具体表现 | 正确理解 |
|---|---|---|
| “增加” vs “设为” | 将音量增加10 vs 将音量设为10 | 增加是在当前值基础上改,设为目标值直接覆盖 |
| “移动” vs “将x坐标增加” | 移动10步 vs 将x坐标增加10 | 移动步数与当前方向有关,x坐标增加只影响x数值 |
| “重复执行” vs “重复执行直到” | 循环次数不同,结束条件不同 | 直到型循环先判断条件再执行 |
| “碰到边缘就反弹”与旋转模式 | 直接反弹可能上下颠倒 | 需配合“将旋转方式设为左右翻转” |
| 亮度范围 | -100到100 | 小于0变暗,大于0变亮 |
| 响度 vs 音量 | 来自麦克风 vs 输出到扬声器 | 侦测模块和声音模块不是一回事 |
| 角色 vs 造型 | 切换角色 vs 切换造型 | 一个是换角色对象,一个是换当前角色的外观 |
这些陷阱词单独拿出来都不算知识盲区,但在考场上被混在长长的选项里,就特别容易看走眼。我的建议是,考前一周每天花十分钟把这张表过一遍,做题时遇到“增加/设为”“角色/造型”这类词,先在题目上圈出来,再对比选项,能明显降低误选概率。
3. 编程题实战:巡逻的小猫如何拿满全部给分点
3.1 真题还原:题目到底让你做什么
这次编程题的第一题,根据多位考生的考后反馈,大致内容如下:
舞台中有一只小猫角色,初始位置在舞台左侧边缘附近。要求点击绿旗后,小猫从左侧向右移动,到达舞台右侧边缘后掉头向左移动,回到左侧边缘后再掉头,如此反复巡逻。巡逻过程中小猫的造型需要不断切换,模拟出走路的样子;并且每到达一次边缘,都要发出“喵”的声音。
拆一下功能点,其实只有四个:
- 绿旗被点击后开始执行;
- 小猫持续左右往返移动;
- 移动过程中切换造型,形成走路动画;
- 到达舞台边缘时播放声音。
难度不高,但非常考验完整度。我了解到的阅卷情况里,这道题最大的扣分点不是“做不出来”,而是“做了一半”——有的孩子只做了向右移动,没有做掉头;有的孩子做了掉头,但造型没切换;还有的孩子声音播放位置不对,一整段巡逻只叫了一声。
3.2 拆解题目:四个功能点与对应积木块
拿到这种题,不要急着拖积木,先在草稿纸上把功能点列出来,然后为每个功能点选好积木方案。
功能点“移动”对应的核心积木是“移动10步”和“面向90/-90方向”。“移动到右边”最可靠的做法不是“移动1000步”,而是用“重复执行直到碰到舞台边缘”配合“移动10步”。这样无论小猫起始位置在哪里,都能准确停在边缘。
功能点“掉头”有两种常见实现:一是用“碰到边缘就反弹”积木,让角色碰到边缘自动反向;二是用“如果碰到舞台边缘,那么面向-90方向”配合条件判断。考试中更推荐用“遇到边缘就反弹”,因为它省掉了额外判断,逻辑更简洁。但要注意把旋转方式设为“左右翻转”,否则小猫掉头后会倒立。
功能点“造型切换”用“下一个造型”积木,放在循环体里,配合一个短的“等待0.1秒”,这样走路效果才自然。如果不加等待,造型切换会快到肉眼看不清,等于这个功能点白做。
功能点“播放声音”用“播放声音喵”,关键是位置要放在“碰到边缘”之后。如果放在循环外面,就只会在整个程序结束时响一次,不符合题目“每次到达边缘都响”的要求。
3.3 参考脚本:从绿旗到声音的完整搭法
结合上面的拆解,我给出一个比较标准的参考脚本(推荐方案):
当绿旗被点击 将旋转方式设为 左右翻转 面向 90 方向 重复执行 移动 10 步 下一个造型 等待 0.1 秒 如果 碰到舞台边缘? 那么 播放声音 喵 面向 -90 方向 如果 碰到舞台边缘? 那么 播放声音 喵 面向 90 方向等一下,这个写法里出现了两个“碰到舞台边缘”,逻辑上有点冗余。更简洁的写法是这样:
当绿旗被点击 将旋转方式设为 左右翻转 面向 90 方向 重复执行 移动 10 步 下一个造型 等待 0.1 秒 碰到边缘就反弹 如果 碰到舞台边缘? 那么 播放声音 喵这个版本的思路是:用“碰到边缘就反弹”解决掉头问题,用“碰到舞台边缘?”作为播放声音的条件,两者配合实现“每次碰到边缘就反弹并播放声音”。需要注意的是“碰到边缘就反弹”本身自带反向功能,所以不需要再去写“面向-90方向”,否则容易互相干扰。
有孩子可能会问:能不能用“重复执行直到碰到舞台边缘”实现?可以,但会出现一个问题——到达边缘后如果循环结束,后续的掉头和返回动作就没法在同一个循环里继续。所以这道题用“重复执行”嵌套“碰到边缘就反弹”更合适,这也是这道题真正想考察的逻辑点。
脚本搭完后,一定要从头到尾运行看效果。如果小猫走到边缘后没有立即掉头,而是卡住不动,多半是“碰到边缘就反弹”和“旋转方式”的配合出了问题;如果小猫走路时造型切换看不清,就把“等待0.1秒”调大一点;如果声音没有在每次边缘触发,检查一下“碰到舞台边缘?”是不是被放到了循环外面。这些检查动作看起来琐碎,却是考试中拿满分的保障。
3.4 编程题的给分逻辑与常见扣分点
编程题阅卷通常不是“效果对了就给满分”,而是按功能点逐项给分。结合这道题的四个功能点,我给一个常见给分逻辑参考:
| 功能点 | 给分条件 | 常见丢分原因 |
|---|---|---|
| 启动方式 | 脚本以“当绿旗被点击”开头 | 用了“当角色被点击”,点绿旗没反应 |
| 移动与掉头 | 角色能往返移动,方向正确 | 只写了移动,没写掉头;或掉头后角色倒立 |
| 造型切换 | 移动过程中使用“下一个造型” | 造型切换太快,肉眼无法确认 |
| 声音播放 | 每次到达边缘播放“喵”声 | 声音放在了循环外,只播放一次 |
这里特别提醒一句:提交前务必点一次绿旗,把作品从头到尾看两遍。有的孩子脚本逻辑没问题,但因为角色初始位置离边缘太近,一运行就反复触发“碰到边缘”,角色在原地抖来抖去,看起来完全不像“巡逻”。这种情况在阅卷时很容易被判为“效果未实现”。解决办法是在程序开头加入“移到 x: y:”积木,把角色放到一个明确的起点位置,比如x为-200、y为0,给巡逻过程留足空间。
4. 考场翻车实录:亮度没恢复、循环卡死、坐标记反的排查复盘
4.1 非知识性失分:不是不会,是操作习惯坑了你
每次考完试,总有孩子委屈地说“我明明会做,但分数不对”。我把这类非知识性失分归结为三类,这次考试里都非常典型。
第一类是角色被误删或移动到了舞台外。有的孩子在调试过程中反复拖动角色,把角色拖到了舞台外边缘,或者误删了角色又重新添加,结果脚本全部丢失。考试时间有限,重新搭脚本几乎等于重做一道题。
第二类是特效没有复位。前面提到亮度特效不会自动恢复,如果考生在调试时把亮度设成了-80,又没有在脚本开头加上“将亮度特效设为0”,那么最终运行时角色就是黑的。孩子自己可能没注意到,但阅卷老师看到的效果就是角色没有正常显示。
第三类是没有理解“答题区”和“舞台区”的对应关系。有些孩子设计的脚本在编辑器里看起来没问题,但一运行,角色的初始位置就在舞台边缘一半的位置,导致“从左侧出发”这个要求根本没有满足。这种问题只要点一次绿旗就能发现,但很多孩子做完脚本不运行就直接提交了。
4.2 完整排查链路:从“小猫不动”到“找对原因”
有个学生考后跟我描述了他编程题的“翻车”经过,我觉得很有代表性。他说:“我写了重复执行,但小猫只动了一下就停了。”
我让他回忆脚本结构,发现他把积木搭成了这样:
当绿旗被点击 面向 90 方向 移动 10 步 重复执行 下一个造型 等待 0.1 秒问题一目了然:“移动10步”被放在了“重复执行”的外面,循环体里只有“下一个造型”和“等待”。所以运行后小猫只向右走了10步就原地不动了,只有造型还在切换。这不是个例,很多孩子搭积木时习惯性先把“移动10步”拖出来,再拖“重复执行”,结果忘了移动积木要放进循环体里。
排查思路应该这样走:先看运行效果,再定位“卡住”的具体位置,然后检查循环体的范围,最后确认需要持续执行的动作是不是都在循环内部。如果角色连第一步都没动,检查方向的朝向和旋转方式;如果在移动中途停下,检查是否被某个“等待”积木卡住;如果移动了但方向不对,检查面向的角度和坐标正负。这套链路放在考场环境下,唯一要做的就是冷静,把脚本从上到下逐块过一遍。
还有一种循环卡死情况:用“重复执行直到 碰到舞台边缘?”时,如果角色所在位置恰好已经碰到了舞台边缘,那么循环体不会执行,角色直接就停了。如果题目要求“先移动一段距离再检测边缘”,就需要把“移动”放在最前面,确保至少执行一次。Strictly speaking这是逻辑边界条件的问题,但在考场上很多孩子并不会想到自己设置的初始位置会直接触发条件。
4.3 提交前必做的三个自检动作
结合这次考试的经验,我把“提交前自检”固定成三个动作,每次带学生考试前都会反复强调。
第一个动作:点一次绿旗,从头到尾连续观察两遍。第一遍看整体效果是否符合题目要求,第二遍专注看细节,比如声音有没有在正确的位置播放、造型有没有切换、亮度特效有没有复位。
第二个动作:检查“当绿旗被点击”是否存在于每个需要运行的脚本入口。一级考试中,所有脚本都应该以事件积木开头,最常见的问题就是“为什么我点了绿旗角色不动”——因为脚本入口写的是“当角色被点击”。
第三个动作:确认没有误删默认角色或背景。如果发现角色没了,先不要慌,看撤销按钮能不能恢复,不能恢复再重新添加角色并重新搭脚本。考试系统中重新添加角色不会自动恢复原脚本,所以还是要以预防为主,调试图中不要随意删除角色。
这三个动作看起来简单,但对一级考生来说,每一条都能直接转化成分数。
5. 从这次题目反推一级考纲:6月备考该往哪儿使劲
5.1 考点热力图与备考优先级
结合这次真题和历年考点,我整理了一张一级考点热力图,方便正在备考6月份考试的同学直接对号入座:
| 模块 | 本次考试出现度 | 备考优先级 | 核心知识点 |
|---|---|---|---|
| 运动 | 高 | ★★★★★ | 坐标、方向、移动步数、旋转方式、反弹 |
| 事件 | 高 | ★★★★★ | 绿旗、键盘事件、角色点击事件 |
| 控制 | 高 | ★★★★★ | 重复执行、重复执行直到、如果那么、等待 |
| 外观 | 中高 | ★★★★★ | 造型切换、背景切换、亮度/颜色/虚像特效 |
| 运算 | 中高 | ★★★★ | 加减乘除、随机数、四舍五入、比较运算 |
| 变量 | 中 | ★★★★ | 变量创建、赋值、增减、显示 |
| 侦测 | 中 | ★★★★ | 碰到舞台边缘、碰到鼠标指针、颜色侦测 |
| 声音 | 低 | ★★★ | 播放声音、音量设置、声音特效 |
优先级最高的几条,几乎都有“组合”属性。运动+控制是最常见的组合,比如“重复执行直到碰到边缘”;外观+变量的组合也频繁出现,比如“变量增加时切换造型”。从这次考试的命题趋势看,单模块背积木的收益在下降,跨模块组合使用才是备考重点。
5.2 按时间轴的备考节奏
如果目标是2025年6月的考试,可以把备考分成三个阶段。
第一阶段是考前4周,重点是“全面过一遍积木”。不需要刷题,而是打开Scratch编辑器,把运动、外观、声音、事件、控制、侦测、运算、变量八个模块里的常用积木逐一拖出来用一遍。重点观察那些容易被忽略的积木,比如亮度特效、虚像特效、碰到颜色、变量增减等。这个阶段的核心目标不是记住所有积木,而是建立“每个积木大概能干什么”的直觉。
第二阶段是考前2周,重点是“组合逻辑训练”。每天做一到两道把两个以上模块串起来的题目,比如“角色碰到鼠标就切换造型并播放声音”“变量达到10时停止全部”。这一阶段不追求速度,追求完整度和逻辑正确性,做完题目后要自己口述一遍每个积木的执行顺序,能说清楚才算真懂。
第三阶段是考前1周,重点是“模拟考试节奏”。找一套往年真题或模拟题,按考试时间完整做一遍,过程中不暂停、不翻资料。这一阶段主要练两件事:一是时间分配,二是提交前的自检动作。很多孩子平时做题很溜,一上机就手忙脚乱,就是因为没有适应考试系统的操作方式。考前至少完整模拟两次,能明显减少考场上的紧张感。
5.3 一条被验证很有效的训练方法:口述脚本逻辑
最后聊一个教学实践中验证了很久的方法。我每年带考级班,都会要求孩子做一件事:把搭好的脚本用嘴说一遍,不是读积木上的字,而是用“因为……所以……”把逻辑串起来。
举个例子,同样是巡逻的小猫脚本,有的孩子搭完了能说出:“因为要一直巡逻,所以用重复执行;每次移动十步,同时切换造型;碰到边缘就反弹,所以角色能掉头;碰到边缘的时候顺便让声音播一次。”这样说出来,说明他理解每个积木存在的意义。说不出来的孩子,往往只是把积木拼到了一起,换个场景就不会用了。
这次考试里“亮度”“保留两位小数”这类细节题,恰恰就是用来筛掉“只会拼积木、不懂积木逻辑”的考生。口述脚本逻辑这个训练,表面上看和机考关系不大,实际上就是在锻炼对执行顺序、条件判断和数值变化的理解,也正是这类细节题最需要的底层能力。每天花十分钟,让家里孩子或学生对着自己搭的脚本讲一遍,坚持三周,效果比多刷几套模拟题要明显得多。
最后再分享一个考场上的小技巧:做完所有题目后,如果时间还有富余,不要反复检查那些已经选完的客观题,而是重新打开编程题,把角色从舞台边缘拖回题目要求的起始位置,再点一次绿旗。很多时候编程题丢分不是因为逻辑不对,而是因为调试时留下的“角色位置偏移”污染了最终效果。这个细节我在带考时提醒过无数次,每次都有孩子因此少扣分,希望你下次考试也能用上。