点击上方蓝字·关注我们



CCF编程能力等级认证,英文名Grade Examination of Software Programming(以下简称GESP),由中国计算机学会发起并主办,是为青少年计算机和编程学习者提供学业能力验证的平台。GESP覆盖中小学全学段,符合条件的青少年均可参加认证。GESP旨在提升青少年计算机和编程教育水平,推广和普及青少年计算机和编程教育。
GESP考察语言为图形化编程、Python编程及C++编程,主要考察学生掌握相关编程知识和操作能力,熟悉编程各项基础知识和理论框架,通过设定不同等级的考试目标,让学生具备编程从简单的程序到复杂程序设计的编程能力,为后期专业化编程学习打下良好基础。
本次为大家带来的是2025年3月Python一级认证真题解析。
Python一级
一、单选题
第1题2025年春节有两件轰动全球的事件,一个是DeepSeek横空出世,另一个是贺岁片《哪吒2》票房惊人,入了全球票房榜。下面关于DeepSeek与《哪吒2》的描述成立的是( )。
A.《哪吒2》是一款新型操作系统
B. DeepSeek是深海钻探软件
C.《哪吒2》可以生成新的软件
D. DeepSeek可以根据《哪吒2》的场景生成剧情脚本
答案:D
解析:哪吒2是电影作品,deepseek是人工智能语言模型,A、B、C三个选项描述均错误,只有D选项描述正确,deepseek具有强大的自然语言处理能力,可以根据场景生成剧情脚本。
第2题 在某集成开发环境中编辑一个源代码文件时不可以执行下面( )操作。
A.修改变量定义
B.保存代码修改
C.撤销代码修改
D.插入执行截图
答案:D
解析:在编辑代码过程中,可以修改变量定义,可以保存程序,书写错误可以撤销修改,这些操作都是常见的代码编辑情况,只有D选项错误,不可以在代码中插入截图。
第3题 有关下列Python代码的说法错误的是( )。

A.配对双引号内的汉字改为英文Hello,Python代码能正确执行
B.代码中的双引号,可以改为两个单引号
C.代码中的双引号,可以改为三个单引号
D.代码中的双引号,可以改为三个双引号
答案:B
解析:首先C、D选项的修改是符合语法的,不会报错,改为Hello,Python也是可以正常打印输出,B选项错误。
第4题 Python表达式16 // 4 % 2 的值是( )。
A. 8
B. 4
C. 2
D. 0
答案:D
解析:本题考查基本运算,16整除4结果为4,4对2进行取余,模运算的结果是0,选择D选项。
第5题 在Python中,假设N为正整数12,则print(N % 3 + N // 5) 将输出( )。
A. 6.4
B. 2.4
C. 6
D. 2
答案:D
解析:本题考查基本运算,变量N为12,12摸3结果为0,12整除5结果为2,0+2=2,选择D选项。
第6题 下面Python代码执行后的输出是( )。

A. 10*10={10*10}
B. 100=100
C. N*N=100
D. N*N={100}
答案:C
解析:使用print进行格式化输出时,双引号内部除大括号范围内会计算,其余是原格式输出,N*N=直接显示,花括号内部计算10*10=100,故选择C选项。
第7题 执行下面的Python代码,在键盘上先后输入100和200,输出是( )。

A. 300
B. 100200
C. '100200'
D. 100 200
答案:B
解析:使用input函数接收的内容是字符串格式,第三行使用print进行加号拼接后输出,输出的是100200,故选择B选项。
第8题 有关下列Python代码print(input())的说法错误的是( )。
A. input()函数的输出可以作为函数print()的输入
B.该代码执行后将输出从键盘上输入的内容
C. input()函数的输出是函数print()的参数
D.该代码存在错误,input()函数应该有提示信息,该提示信息是input()的参数
答案:D
解析:选项A和选项C的描述是相同的,且是正确的,键盘输入的内容会被print函数输出,选项B正确,input函数的提示词不是必须的,D选项错误。
第9题 下面Python代码执行后,将输出能被2整除且除以7余数为2的数。下列选项不能实现的是( )。

A. i % 2 == 0 and i % 7 == 2
B. not(i % 2) and i % 7 == 2
C. not(i % 2) and not(i % 7)
D. i % 2 != 1 and i % 7 == 2
答案:C
解析:选项C中and的前半部分可以判定能否被2整除,但是后半部分不能判定余数是否为2,只能判断是否是7的倍数,故选择C选项。
第10题 下面Python代码执行后输出是( )。

A. -1000
B. 0
C. 999
D. 1000
答案:A
解析:观察题目给出的程序,属于对称区间求和,从-999 ~ -1 和1 ~ 999 会相互抵消,剩下的是-1000,所以输出的tnt是-1000。
第11题 下面Python代码执行后输出的是( )。

A. 100
B. 96
C. 1
D. 0
答案:B
解析:依照题目给出的程序,循环变量i以步长为5,一直增大且循环均被跳过,i=96是符合循环条件可以继续循环的,设置的上限是100,最大取到99,最终输出的i为96。
第12题 下面Python代码执行后输出的是( )。

A. 500
B. 450
C. 10
D. 2
答案:D
解析:依照题目给出的程序,遍历过程中i=5,10,15~90,95(i<100),仅当i=5,15,25,35,45,55,65,75,85,95满足奇数条件,tnt变量会自增两次1,最终tnt=2。
第13题 下面Python执行后,海龟指向135度,横线处填入代码错误的是( )。

A. 3
B. 1, 4
C. 1, 5, 2
D. 1, 6, 2
答案:C
解析:指向135度需要向左旋转三次45度,四个选项中只有C选项是不能够循环三次的,只能循环两次不能够达到135度,故选择C选项。
第14题 为在Python Turtle中输出如下图形,代码横线处应填入( )。

A. 6
B. 7
C. 10
D. 11
答案:A
解析:依照题目给出的图形,需要将前进50和转弯60度重复执行6次,所以循环需要写for i in range(6): 故选择A选项。
第15题 下面的Python执行后,输出的图形是( )。

A.

B.

C.

D.

答案:A
解析:循环是从1-20,期中符合i%5==0是三次,分别是i等于1、5、15时,其中抬笔前进的距离是50,和绘制的正方形边长是一样的,不会出现缝隙,且最终的画笔方向是向下的,故选择A选项。
二、判断题
第1题 C++、Python都是高级编程语言,它们每条语句的执行最终都要通过机器指令来完成。( )
答案:正确
解析:高级语言需要翻译为机器码执行,C++、Python都是高级编程语言,题目描述正确。
第2题 在Python中表达式N ** 2 // N 中如果N的值为正整数,则其值为2。( )
答案:错误
解析:变量N是正整数,两个星号是幂运算,例如:N等于4平方后是16,16//4=4结果并不为2,题目描述错误。
第3题 执行如下Python代码如果在键盘上输入10,执行后将输出20。( )

答案:错误
解析:题目代码使用input接收并未转换成int所以输入的10是字符串,乘以2的操作是成倍输出显示1010。
第4题 删除下面Python代码中的continue不影响程序的执行效果。( )

答案:正确
解析:依照题目给出程序,在执行完if语句,输出偶数两个字之后,会执行下一次循环,是否书写continue并没有影响。
第5题 下面Python代码执行时将报错,因为_所在位置应该是变量名,而_不可以做变量名。( )

答案:错误
解析:程序不会报错,依照变量名的命名规则,下划线是合法变量名。
第6题 下面Python代码被执行后,将先后输出3和5。( )

答案:错误
解析:循环过程中变量i为3可以循环,输出数字3,增加2后变量变为5,不符合<5,循环结束,不会输出5。
第7题 下面的Python代码执行后将先后输出10个True。( )

答案:正确
解析:题目中循环是从0到9结束共10次循环,输出的是i**2和i*i,这两种都是平方的意思,计算结果相同,会输出10个true。
第8题 在Python代码中,user_Name、userName、user-Name、userName都是合法的变量名。( )
答案:错误
解析:变量名仅能由数字、字母、下划线构成,其中user-Name是不合法变量名。
第9题 下面的Python代码执行后,海龟指向与初始一样,即和指向0度方向一致。( )

答案:正确
解析:题目给出的程序是旋转90度,循环4次,共旋转360,相当于回归到最初的方向。
第10题 下面的Python代码被执行后将绘出围绕同一中心的正多边形。( )

答案:正确
解析:程序会画出5个图形,且是围绕同一中心的,分别是三变形、四边形......七边形。
三、编程题
编程题1
图书馆里的老鼠
题目描述
图书馆里有n本书,不幸的是,还混入了一只老鼠,老鼠每x小时能啃光一本书,假设老鼠在啃光一本书之前,不
会啃另一本。请问y小时后图书馆里还剩下多少本完整的书。
输入格式
三行,第一行一个正整数 ,表示图书馆里书的数量;
第二行,一个正整数 ,表示老鼠啃光一本书需要的时间;
第三行,一个正整数 ,表示经过的总时间;
输入数据保证 小时后至少会剩下一本完整的书。
输出格式
一行,一个整数,表示 小时后图书馆里还剩下多少本完整的书。
输入样例1
10
2
3
输出样例1
8
解析:
定义变量n表示书的总数,x表示老鼠啃光一本书所需的小时数,y表示经过的小时数,ans表示剩余完整书的数量。计算剩余完整书的数量,y // x 表示在y小时内老鼠啃光的整本书的数量,(y % x > 0) 用于处理y不能被x整除的情况,证明老鼠正在啃食下一本书,但是没有啃食完成,完整的书需要再少一本,最后输出剩余完整书的数量。
参考代码:

编程题2
四舍五入
题目描述
四舍五入是一种常见的近似计算方法。现在,给定n个整数,你需要将每个整数四舍五入到最接近的整十数。例如,43四舍五入后为40,58四舍五入后为60。
输入格式
共n+1行,第一行,一个整数n,表示接下来输入的整数个数。接下来n行,每行一个整数a1 a2 ... an,表示需要四舍五入的整数。
输入样例1
5
43
58
25
67
90
输入样例2
40
60
30
70
90
解析:
首先定义变量,然后输入数据,循环n次接收n个数据,对于每次接收的数字x做加5处理,例如43在加5后会不满50,做整除10,乘以10计算,结果为40,如果是个位达到5,45+5=50,50/10*10结果为50,可以实现题目要求的四舍五入,如果是个位大于5则更加能是实现,不受影响,最后输出。
参考代码:

策划:GESP技术委员会副主席 刘晓庆
技术支持:马长明


1.GESP微信:关注“CCF GESP”公众号,点击"GESP小助手"即可交流。
2.GESP邮箱:gesp@ccf.org.cn
注:请在邮件中详细描述咨询的问题并留下考生的联系方式及姓名、身份证号,以便及时有效处理。
3.GESP电话:0512-67656856
咨询时间:周一至周五(法定节假日除外):上午 8:30-12:00;下午 13:00-17:30
