当前位置:首页>python>GESP第七次认证真题解析|Python一级真题回顾

GESP第七次认证真题解析|Python一级真题回顾

  • 2026-09-12 10:03:37
GESP第七次认证真题解析|Python一级真题回顾

点击上方蓝字·关注我们

CCF编程能力等级认证,英文名Grade Examination of Software Programming(以下简称GESP),由中国计算机学会发起并主办,是为青少年计算机和编程学习者提供学业能力验证的平台。GESP覆盖中小学全学段,符合条件的青少年均可参加认证。GESP旨在提升青少年计算机和编程教育水平,推广和普及青少年计算机和编程教育。

GESP考察语言为图形化(Scratch)编程、Python编程及C++编程,主要考察学生掌握相关编程知识和操作能力,熟悉编程各项基础知识和理论框架,通过设定不同等级的考试目标,让学生具备编程从简单的程序到复杂程序设计的编程能力,为后期专业化编程学习打下良好基础。

本次为大家带来的是2024年9月份Python一级认证真题解析。

一、单选题(每题3分,共30分)

题号

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

答案

A

D

D

B

C

D

B

A

B

B

C

D

A

A

A

1、据有关资料,山东大学于1972年研制成功DJL-1计算机,并于1973年投入运行,其综合性能居当时全国第三 位。DJL-1计算机运算控制部分所使用的磁心存储元件由磁心颗粒组成,设计存贮周期为2μs(微秒)。那么该磁心存储元件相当于现代计算机的( )。A.内存

B.磁盘

C.CPU

D.显示器

【答案】A

【考纲知识点】计算机基础与编程环境(一级)

【解析】本题考察计算机组成部分;题干强调磁心元件为计算机运算控制部分的存储元件,计算机中内存用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据,故该元件属于内存,所以本题正确答案为A。

2、Python程序执⾏出现错误 ,不太常见的调试⼿段是(   )。

A.阅读源代码

B.单步调试

C.输出执⾏中间结果

D.跟踪计算机执⾏的底层代码(如⼆进制机器码 ,汇编码)

【答案】D

【考纲知识点】计算机基础与编程环境(一级)

【解析】本题考察程序调试功能;阅读源代码 是一种非常常见的调试方法,通过查看代码逻辑来找出可能的问题;单步调试 是通过逐行执行代码,观察每一步的状态和变化,这也是常见的调试方法;输出执行中间结果 通过在代码中添加打印语句,查看程序运行时的变量值和状态,也是常见的方法;跟踪汇编码 是指查看编译后的汇编代码来调试程序,这是比较低级、复杂且不太常用的调试方式。所以本题正确答案为D。

3、在Python中 ,下列表达式错误的是(     )。

A. print("Hello,GESP!")

B. print('Hello,GESP!')

C. print("""Hello,GESP!""")

D. print("Hello,GESP!')

【答案】D

【考纲知识点】输入输出语句(一级)

【解析】python可以使用引号( ' 或" )来创建字符串,三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符,选项D有一个双引号和一个单引号互不成对,会导致程序编译失败。所以本题答案为D。最重要是强调字符串字面量的引号界定符必须配对。单引号开始单引号结束,双引号开始双引号结束,三引号开始三引号结束

4、Python表达式10 - 3 * 2 的值是(     )。

A.14

B. 4  

C. 1  

D. 0

【答案】B

【考纲知识点】基本算术运算(一级)

【解析】本题考察算术运算优先级:算式乘、除、取模运算优先级一致且比加、减运算优先级高,所以题目表达式先算3 * 2 ,结果为6,再算10 – 6,结果为4。所以本题正确答案为B。一般说来,运算符的优先级与数学中保持一致,比如:先乘除后加减等。

5、在Python中 ,假设N为正整数10,则print(N // 3 + N % 3) 将输出(    )。

A. 6    

B. 4.3

C. 4    

D. 2

【答案】C

【考纲知识点】变量的定义与使用(一级)、基本运算算术(一级)

【解析】本题主要考察python中的基本算术运算:在python中,数值的除法包含两个运算符:/返回一个浮点数,//返回一个整数。%为取模【求余操作】操作,题目中N为整数10,所以N // 3 结果为3。N % 3 结果为1。最后算式为3 + 1结果为4。所以本题正确答案为C。

6、Python语句print(f"6%2={6%2}")执行后的输出是(     )。

A. f"6%2={6%2}"

B. 6%2={6%2}

C. 0=0

D. 6%2=0

【答案】D

【考纲知识点】输入输出语句(一级)

【解析】本题考察格式化字符串;f-string称之为字面量格式化字符串,是新的格式化字符串的语法。f-string格式化字符串以f开头,后面跟着字符串,字符串中的表达式用大括号{}包起来,它会将变量或表达式计算后的值替换进去。其中{}包含表达式6 %2,其值为0。最终输出为6%2=0。所以本题正确答案为D。

7、执行下面的Python代码 ,先后从键盘上输入5回车和2回车 ,输出是(   )。

A.将输出整数7

B.将输出52,5和2之间没有空格

C.将输出5和2,5和2之间有空格

D.语句执⾏将报错 , 因为input()函数的括号内没有提⽰字符串

【答案】B

【考纲知识点】变量的定义与使用(一级)、输入输出语句(一级)

【解析】Python中input()函数接受一个标准输入数据,返回为string类型。print(a+b)实际为字符串拼接,输出为52,所以本题正确答案为B。

8、下⾯Python代码执⾏后 ,相关说法错误的是(        )。

A.如果N是⼩于10的正整数 ,则输出0

B.如果N是⼤于等于0的整数 ,则输出N的个位数【N的最后⼀位数】

C.如果N是负整数 ,则输出不是N的个位数【N的最后⼀位数】

D.如果N是⼤于10的正整数 ,则输出N的个位数【N的最后⼀位数】

【答案】A

【考纲知识点】输入输出语句(一级)、基本运算(一级)

【解析】

代码含义:第1行输入N为字符串,第2行转为int类型,第3行输出N%10的值

A:当N<10时,N%10为0~9,所以说法错误

B:当小于10时,输出当前数字即个位,大于等于10时,输出个位,所以说法正确

C:比如N=-13,N%10=7,所以说法正确

D:比如N=12,N%10=2,所以说法正确

所以本题正确答案为A。

9、下⾯Python代码执行后 ,相关说法错误的是(     )。

A.如果输⼊正整数、 负整数或0 ,输出都将是⼤于等于0的数 ,即其绝对值

B.如果输⼊正浮点数、 负浮点数或0,输出都将是⼤于等于0的浮点数 ,即其绝对值

C.如果输⼊正浮点数或负浮点数 ,程序将报错  

D.如果输⼊形如5+2类似的表达式 ,程序将报错

【答案】B

【考纲知识点】选择语句(一级)

【解析】输入N转为int类型,如果N小于0,输出-N,大于等于0,输出N,代码功能为输出N的绝对值

B选项:输入浮点数则报错,结果不可能为浮点数,所以说法错误,所以本题正确答案为B。

10、下面Python代码执行后输出是()。

A.55

B. 45

C. 10

D. 9

【答案】B

【考纲知识点】循环语句(一级)

【解析】本题考查for循环语句;题目循环语句用i进行枚举,i从0开始,i逐个枚举从0、1、2···直到9;Sum从初值0开始,循环体语句为Sum累加每次i的值,最终结果为0~9求和为45。所以本题正确答案为B。【强调不包括10】

11、下面Python代码执行后输出的是()。

A.55

B.45

C.10

D. 9

【答案】C

【考纲知识点】循环语句(一级)

【解析】本题考查for循环语句;题目循环语句用i控制循环,i从0开始,逐个枚举从0、1、2···直到9,一共10次循环。N初值从0开始,每次循环增加1,故循环结束后N的值为10,最后输出结果为10.所以本题正确答案为C。

12、下面Python代码执行后输出的是(  )。

A.5

B.4

C.2

D. 0

【答案】D

【考纲知识点】循环语句(一级)、选择语句(一级)

【解析】本题考查for循环语句、if语句以及continue语句;题目循环语句用i控制,i从1开始,每次循环增加2,i逐个枚举从1、3、5···直到9。循环内判断i除以2的余数是否为1(判断i是否为奇数):

如果成立,将会continue跳过本次循环之后的语句,直接进入到下一次循环;如果不成立,才会执行语句N+=1。由于i每次循环的值除以2的余数均为1,所以不会执行N+=1,因此循环结束N的值没有变化,仍为初值0。所以本题正确答案为D。

13、为在Python Turtle中输出如下图形,代码横线处应填入( )。

A.right(90)

B. left(90)

C. right(-90)

D. left(-180)

【答案】A

【考纲知识点】循环语句(一级),Turtle绘图(一级)

【解析】

根据最后箭头的位置可知要先向下画一条边,需要向右转90度,所以为turtle.right(90),所以本题正确答案为A。【学会判断方向,循环四次】

14、下面Python执行后 ,有关说法 ,正确的是(   )。

A.以红⾊线段开始 ,长度为20

B.以红⾊线段开始 ,长度为25

C.以蓝⾊线段开始 ,长度为20

D.以蓝⾊线段开始 ,长度为25

【答案】A

【考纲知识点】Turtle绘图(一级)、循环语句(一级)、选择语句(一级)

【解析】循环[0,1,...,8,9]次,依次红蓝交替画线段,当i=0时,i%2==0成立,画笔颜色为红色,长度为20+0*5=20,所以本题正确答案为A。

15、下⾯Python代码执行后输出的是(  )。

【答案】A

【考纲知识点】Turtle绘图(一级)、循环语句(一级)、选择语句(一级)

【解析】

循环[0,1,2,3]次,如果i是偶数为红色画笔,奇数为蓝色画笔

当i小于2时,画半径为25的圆,大于等于2时,画半径为50的圆,可以排除BD

当i=0时,为红色画笔,此时圆心在画笔左侧画圆,所以在下半部分,所以本题正确答案为A。

二、判断题(每题2分,共20分)

题号

1

2

3

4

5

6

7

8

9

10

答案

√

×

√

×

×

×

√

√

×

√

1、小杨最近开始学习Python编程 ,⽼师说Python是⼀门高级语言 。  ( )

【答案】√

【考纲知识点】计算机基础(一级)

【解析】本题考察编程语言基本知识;Python是一门面向对象的高级编程语言。所以本题正确。

2、在Python中 ,表达式 10/2和10//2的值相同 ,都是整数5。(       )

【答案】×

【考纲知识点】基本算术运算(一级)

【解析】数值的除法包含两个运算符:/返回一个浮点数,//返回一个整数。10/2为5.0,10//2为5,所以本题错误。

3、Python语句print(int(input()))能接收形如正整数、 负整数和0输⼊ ,输⼊含字母或带小数点数 ,将导致错误 。 ( )

【答案】√

【考纲知识点】输入输出语句(一级)

【解析】input()函数接受一个标准输入数据,为string类型, int(input())转为int类型,如果为非整数,报错,本题正确

  1. 下⾯的Python代码执行过程中不会出现错误 ,且其输出为45 。 ( )

【答案】×

【考纲知识点】变量的定义与使用(一级)

【解析】Python中的变量不需要声明,但每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。Sum没有被创建,会报错,本题错误

5、下⾯Python代码执行后将输出100。 ( )

【答案】×

【考纲知识点】循环语句(一级)

【解析】range(100)不包含100,i的范围为0~99,所以最后输出为99,本题错误

6、下⾯Python代码执行后 ,最后⼀次输出是10。 ( )

【答案】×

【考纲知识点】循环语句(一级)

【解析】从1开始,步长为3,依次为1 4 7,最后输出为7,本题错误

7、在Python循环语句中 ,break通常与if语句配合使⽤ 。  ( )

【答案】√

【考纲知识点】循环语句(一级)

【解析】在循环语句中,通常用if限制某些条件下break结束循环,本题正确

8、在Python代码中 ,不可以将变量命名为five-star, 因为变量名中不可以出现-(减号)符号 。  ( )  

【答案】√

【考纲知识点】变量的定义与使用(一级)

【解析】本题考察变量的命名规则;变量命名时需要满足:首位字符不能是数字;变量名只能由大小写字母、数字和下划线(_)组成;变量名不能是Python中的关键字。所以本题正确。

9、Python代码turtle.home()可以清除海⻳绘图 ,且海⻳将回到原点 ,海⻳⽅向重置为初识⽅向 。 ( )

【答案】×

【考纲知识点】Turtle绘图(一级)

【解析】home()不会清除绘图,所以本题错误

  1. 下⾯Python代码执⾏后将绘制从左到右逐步升⾼的台阶 。  ( )

【答案】√

【考纲知识点】Turtle绘图(一级)、循环语句(一级)

【解析】循环10次,每次先画一条20直线,左转向画一条10直线,再右转向回来,得到如下图形

三、编程题(每题25分,共50分)

1、小杨购物

问题描述

小杨有n元钱用于购物。商品A的单价是a元,商品的单价是b元。小杨想购买相同数量 的商品A和商品B。 请你编写程序帮小杨计算出他最多能够购买多少个商品A和商品B。

输入描述

第一行包含一个正整数n,代表小杨用于购物的钱的金额。

第二行包含一个正整数a,代表商品A的单价。

第三行包含一个正整数b,代表商品B的单价。

输出描述

输出一行,包含一个整数,代表小杨最多能够购买的商品A和商品B的数量。

样例1

在样例1中,第1行输入的12表示小杨拥有的资金总额为12元,第2行的1表示第一种商品(即商品A)的单价,第3行的2表示第二种商品(即商品B)的单价。

对于样例1,由于需要购买相同数量的两种商品,因此小杨最多能够购买4件商品A和4件商品B,共花费4×1+4×2=12元。因此,样例1的答案为4。

对于本题,输入皆为大于0的正整数,不必考虑其他情况。

样例2

对于样例2,由于需要购买相同数量的两种商品,因此小杨最多能够购买4件商品A和4件商品B,共花费4×1+4×2=12元。如果小杨想购买5件商品A和5件商品B,则需花费5×1+5×2=15元,超过了小杨的预算13元。因此,样例2的答案为4。

对于全部数据,保证有1≤n,a,b≤105【此处为严谨题目所需,本级考生不必考虑本行描述】。

【考纲知识点】 变量的定义与使用(一级)、基本算术运算(一级)

【解题思路】 购买的A、B商品数量相等,可以将它们打包来买,每买1件A与B商品花费为(a+b)元,所以最后计算n元能分出多少整数个(a+b)即可。

【参考程序】

【程序解析】通过input()读入,并且将变量n、a、b转为int类型,计算购买A与B商品的总花费为int(a)+int(b),python中/得到的结果为小数,最后结果需要取整数int(n/tot)即为可购买的整数个商品数量

2、美丽数字

问题描述

小杨有n个正整数,他认为一个正整数是美丽数字当且仅当该正整数是9的倍数但不是8的倍数。 小杨想请你编写一个程序计算n个正整数中美丽数字的数量。

输入描述

第一行包含一个正整数n,代表正整数个数。

第二行包含n个正整数a1,a2,a3,...,an。

输出描述

输出一个整数,代表其中美丽数字的数量。

样例1

对于样例1:

  • 1既不是9的倍数,也不是8的倍数;

  • 9是9的倍数,不是8的倍数;

  • 72既是9的倍数,也是8的倍数;

因此答案为1。

对于全部数据,均保证输入为大于0的正整数,保证有1≤n≤105,1≤ai≤105。【此处为严谨题目所需,本级考生可不考虑】。

【考纲知识点】 循环运算(一级)、关系运算(一级)

【解题思路】1个数x判断是否为美丽数字,需要同时满足x是9的倍数以及x不是8的倍数,即为x除以9的余数为0以及x除以8的余数不为0;会有n个数等待判断,将判断1个数的程序放入循环当中,并统计每次判断是美丽数的个数。

【参考程序】

【程序解析】

有n个数需要判断,使用循环语句执行n次循环,每次循环判断一个数x是否满足条件,写法为x % 9 == 0 and x % 8 != 0,使用ans统计个数。

技术支持:韩丹

策划:GESP技术委员会副主席 刘晓庆

联系方式

1. GESP微信:关注“CCF GESP”公众号,点击“GESP小助手”即可交流。

2. GESP邮箱:gesp@ccf.org.cn

注:请在邮件中详细描述咨询的问题并留下考生的联系方式及姓名、身份证号,以便及时有效处理。

3. GESP电话:0512-67656856

咨询时间:周一至周五(法定节假日除外)上午 8:30-12:00;下午 13:00-17:30

扫码关注GESP公众号,了解更多资讯


点击此处 “阅读原文” 查看更多内容

最新文章

随机文章