2022年06月 Python(一级)真题解析#中国电子学会#全国青少年软件编程等级考试

2022年06月 Python(一级)真题解析#中国电子学会#全国青少年软件编程等级考试_第1张图片

Python等级考试(1~6级)全部真题・点这里

一、单选题(共25题,每题2分,共50分)

第1题

在Python编辑器中写好程序代码后,在Run菜单中,下列哪个命令可以用来执行程序?( )

A: Check Module
B: Run Module
C: Python shell
D: 任意一个都可以

答案:B

在Python编辑器中,可以使用"Run Module"命令来执行程序。这个命令通常可以在编辑器的菜单栏中找到,一般位于"Run"或"Execute"等选项下面。选择"Run Module"后,编辑器将会执行当前打开的Python文件,并显示程序的输出结果。

第2题

中国电子学会组织来自全国各地的学生共计90人参加人工智能活动,按参加学生名单顺序,每 10个人一排,若想知道第46个人在哪一排就坐,下列算法中哪一种可以实现?( )

A: (46-1) % 10 + 1
B: 46 % 10
C: (46-1) // 10 + 1
D: 46 // 10

答案:C

(46-1) // 10 + 1 - 这个算法可以确定第46个人所在的排数。它首先将46减去1,得到45,然后对10进行整除,结果为4,最后加1,得到第46个人所在的排数为5。

第3题

在数学计算中,“÷”可以表示除法运算,在Python运算符中,可以用作除法运算的符号是?( )

A: /
B:
C: ÷
D: %

答案:A

选项A中的斜杠(/)是Python中表示除法运算的符号。因此,选项A是正确答案。其他选项的解析如下:

B: \ - 反斜杠(\)在Python中用作转义字符,而不是除法运算符。

C: ÷ - 在Python中,除法运算符不是使用“÷”符号表示,而是使用斜杠(/)。

D: % - 百分号(%)在Python中用作取模运算符,而不是除法运算符。

第4题

下列表达式中,哪两个运行结果完全相同?( )
①16%2 ②16/2**2 ③16/4 ④16//4

A: ①②
B: ②③
C: ③④
D: ①④

答案:B

① 16%2 = 0
② 16/2**2 = 16/4 = 4.0
③ 16/4 = 4.0
④ 16//4 = 4

从结果可以看出②和③是完全相同的。

第5题

IDLE编程环境有脚本式编程和交互式编程,对于这两种编程环境,下列说法错误的是?( )

A: 在IDLE主窗口中,可以通过“File→New File”,打开一个新文件
B: 在脚本式编程环境中,运行指令前需要先保存才可以运行
C: 在交互式编程环境中,我们可以修改和保存文件
D: 点开IDLE窗口,主窗口会显示当前安装Python的版本号

答案:C

在交互式编程环境中,我们不能修改和保存文件。交互式编程环境主要用于逐行执行代码并立即查看结果,而不支持保存和修改文件。相反,脚本式编程环境允许我们创建、编辑、保存和运行Python脚本文件。

第6题

对于Python的说法错误的是?( )

A: 用户都可以使用Python,不需要支付费用
B: Python具有跨平台性,可以在不同类型的操作系统上运行使用
C: Python提供大量的内置对象和内置函数,使用时仅需调用即可实现
D: Python语言比较人性化,无需注重首行缩进等语法规则

答案:D

Python语言对于缩进有严格的要求,首行缩进以及代码块的缩进是Python语法的一部分。正确的缩进对于代码的执行和逻辑非常重要。在Python中,缩进用于表示代码块的层次结构,而不是简单的格式化要求。

第7题

爷爷的年龄数与孙子生活过的月数一样多 ,你知道孙子和爷爷各是多大年龄吗?( )

A: 10岁 60岁
B: 12岁 52岁
C: 5岁 60岁
D: 8岁 67岁

答案:C

假设孙子的年龄为x岁,则孙子生活过的月数为12x个月。根据题目,爷爷的年龄数与孙子生活过的月数一样多,即爷爷的年龄也为12x岁。

根据选项进行计算:

A: 10岁 60岁
B: 12岁 52岁
C: 5岁 60岁
D: 8岁 67岁

只有选项C中的5岁和60岁满足爷爷的年龄为孙子生活过的月数的条件。

第8题

运行程序

>>> print(9%2+9//2)

输出的结果是?( )

A: 2
B: 5.5
C: 5
D: 9

答案:C

让我们来逐步解析计算过程:

首先,计算 9%2,即 9 除以 2 的余数,结果为 1。

然后,计算 9//2,即 9 除以 2 的整数部分,结果为 4。

最后,将余数和整数部分相加,即 1 + 4,结果为 5。

第9题

下面的程序:

a='7'
print(a==7)

输出的结果是?( )

A: True
B: 7
C: “7”
D: False

答案:D

让我们来解析一下程序的执行过程:

变量 a 被赋值为字符串 '7'

print 语句中,我们比较变量 a 是否等于整数 7

字符串 '7' 和整数 7 是不同的类型,因此它们不相等。

所以,表达式 a==7 的结果为 False

第10题

若a=(3+4)*2.0,那么print(a)的输出是?( )

A: 11.0
B: 14
C: 14.0
D: 10

答案:C

首先,计算括号内的表达式 3+4,结果为 7。

然后,将结果 7 乘以 2.0,得到结果 14.0。

第11题

输入一个两位数,可以将十位数和个位数对调位置(如:输入18,输出81)输出的程序是?( )

A:

a=int(input("请输入一个两位数"))
b=a//10
c=a%10
print(c*10+b)

B:

a=int(input("请输入一个两位数"))
b=a%10
c=a//10
print(c*10+b)

C:

a=int(input("请输入一个两位数"))
b=a/10
c=a//10
print(c*10+b)

D:

a=int(input("请输入一个两位数"))
b=a//10
c=a%10
print(c+b)

答案:A

首先,使用 input 函数获取用户输入的两位数,并将其转换为整数类型赋值给变量 a

然后,通过整除运算 a//10 得到输入数的十位数,将其赋值给变量 b

接着,通过取模运算 a%10 得到输入数的个位数,将其赋值给变量 c

最后,使用 print 函数输出十位数和个位数对调位置后的结果,即 c*10+b

第12题

已知a=“11”,b=“22”,那么print(a+b)的输出结果是?( )

A: 11
B: 33
C: 1122
D: 22

答案:C

在这个表达式中,ab 是字符串类型。使用 + 运算符可以将两个字符串进行拼接。所以,a+b 的结果是字符串 "1122"。最后,print(a+b) 将输出字符串 "1122"。因此,选项 C 是正确答案。

第13题

在Python函数中,用于获取用户输入的是?( )

A: int()
B: float()
C: input()
D: print()

答案:C

函数 input() 用于从用户处获取输入。它会暂停程序的执行,等待用户输入,并返回用户输入的内容作为字符串。你可以将其赋值给一个变量,以便在程序中使用用户的输入。

第14题

turtle.dot(40),这个语句画出的点的半径大小是?( )

A: 80
B: 40
C: 20
D: 0

答案:C

turtle 模块中,dot() 函数用于绘制一个点。括号中的参数表示点的直径大小,而不是半径大小。因此,turtle.dot(40) 语句会绘制一个直径为 40 的点,即半径为 20。

第15题

下面关于turtle.clear()功能说法正确的是?( )

A: 执行clear()功能后,画笔最终位置一定是在画布中心
B: 执行clear()功能后,画笔的颜色会变为白色
C: 执行clear()功能后,海龟画布窗口会被清空
D: clear()功能和reset()功能的效果是完全一样的

答案:C

函数 clear()turtle 模块中的一个方法,用于清空海龟画布窗口上的绘图。执行 clear() 后,之前绘制的图形将被擦除,画布将变为空白。

选项 A 是不正确的,执行 clear() 后,画笔的位置不会自动回到画布中心。

选项 B 也是不正确的,执行 clear() 后,画笔的颜色不会发生变化。

选项 D 也是不正确的,clear()reset() 功能的效果是不同的。clear() 只清空画布上的绘图,而 reset() 则会重置画布的状态,包括画笔位置、颜色、方向等。

第16题

比较运算符中的大于等于符号是哪一个?( )

A: >
B: <=
C: >=
D: > and ==

答案:C

大于等于符号 >= 用于判断左边的值是否大于或等于右边的值。它返回一个布尔值,如果左边的值大于或等于右边的值,则为 True,否则为 False。

第17题

print(13 + 6 / 2 == 16)的结果是?( )

A: 16.0
B: 16
C: True
D: False

答案:C

在这个表达式中,首先计算 6 / 2 得到结果 3。然后,计算 13 + 3 得到结果 16。最后,比较结果 16 是否等于 16。由于相等,所以表达式的结果为 True。

第18题

turtle绘图中可以回到原点的命令是?( )

A: turtle.done()
B: turtle.home()
C: turtle.setup()
D: turtle.dot()

答案:B

函数 turtle.home() 用于将海龟(turtle)的位置重置为原点(0, 0)。当调用 turtle.home() 后,海龟将回到画布的中心位置。

第19题

turtle绘图中设置画笔宽度5像素、绘制的线条颜色为red的命令是?( )

A:

turtle.size(5)
turtle.pencolor("red")

B:

turtle.size(5)
turtle.color("red")

C:

turtle.pensize(5)
turtle.pencolor("red")

D:

turtle.penwidth(5)
turtle.color("red")

答案:C

函数 turtle.pensize() 用于设置画笔的宽度,参数为像素值。在这种情况下,我们将画笔宽度设置为5像素。

函数 turtle.pencolor() 用于设置画笔的颜色,参数可以是颜色名称或RGB值。在这种情况下,我们将线条颜色设置为red。

第20题

下列选项中,代码会报错的是?( )

A: print(‘banana’ + ‘apple’)
B: print(‘banana’ - ‘ana’)
C: print(‘banana’ * 100)
D: print(‘banana’ + str(6))

答案:B

在选项 B 中,尝试使用减法运算符 - 来减去字符串 'ana',这是不允许的。字符串之间不能进行减法运算。

第21题

下列选项中,不可以控制turtle移动的语句是?( )

A: turtle.forward()
B: turtle.goto()
C: turtle.backward()
D: turtle.hideturtle()

答案:D

函数 turtle.hideturtle() 用于隐藏海龟(turtle),而不是控制它的移动。调用 turtle.hideturtle() 后,海龟将不再可见。

第22题

想要画出如下图形,第④行代码应该是?( )

2022年06月 Python(一级)真题解析#中国电子学会#全国青少年软件编程等级考试_第2张图片

import turtle
② t = turtle.Turtle()
③ t.forward(100)
④
⑤ t.forward(100)

A: t.left(90)
B: t.right(90)
C: t.left(180)
D: t.right(-90)

答案:B

箭头的初始方向为右,再执行right(90),箭头的朝向会向下

第23题

下列程序绘制的是一个什么图形?( )

import turtle 
turtle.forward(100) 
turtle.left(90) 
turtle.forward(50) 
turtle.left(90) 
turtle.forward(100) 
turtle.left(90)
turtle.forward(50) 
turtle.left(90) 

A: 正方形
B: 菱形
C: 长方形
D: 三角形

答案:C

通过这些指令的循环,乌龟(turtle)将沿着一个封闭路径移动,形成一个具有两个相等边长和四个直角的图形,即长方形。

第24题

下列属于Python保留字的是?( )

A: If
B: For
C: Else
D: None

答案:D

保留字区分大小写,所以选项A、B、C都不是保留字,而None是保留字。

第25题

下面的运算符中,按照运算优先级哪一个是最高级?( )

A: ==
B: *
C: and
D: <

答案:B

在Python中,乘法运算符具有较高的优先级。它会在其他运算符(例如比较运算符和逻辑运算符)之前执行。

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

第26题

运行下列python代码后可绘制出下面的半径为50的圆形。( )

import turtle
turtle.color('red')
turtle.penup()
turtle.circle(50)
turtle.pendown()

2022年06月 Python(一级)真题解析#中国电子学会#全国青少年软件编程等级考试_第3张图片

答案:错误

运行该Python代码后无法绘制出半径为50的圆形。原因是缺少落笔命令。正确的代码应该是:

import turtle
turtle.color('red')
turtle.penup()
turtle.goto(0, -50)
turtle.pendown()
turtle.circle(50)

这样,turtle会先抬起画笔,然后移动到圆心位置,再放下画笔,最后绘制出半径为50的红色圆形。

第27题

Python源文件以.Py及.Pyw作为文件扩展名,但它实际上是一个文本文件,在保存时可以使用任何名字来进行文件命名。( )

答案:正确

Python源文件通常以.py.pyw作为文件扩展名,但实际上它们只是文本文件,可以使用任何合法的文件名进行保存。文件扩展名只是一种约定,用于指示文件的类型和关联的程序。在保存Python源文件时,你可以选择任何你喜欢的文件名,只要确保文件扩展名是.py.pyw即可。

第28题

a,b=1是一条合法的赋值语句,将1分别赋值给变量a和b。( )

答案:错误

a, b = 1 不是一条合法的赋值语句,将整数1分别赋值给变量a和b。在Python中,对于多个变量的同时赋值,需要确保等号两边的元素数量相等。

例如,以下是合法的多个变量同时赋值的示例:

a = b = 1  # 将整数1赋值给变量a和b

或者:

a, b = 1, 2  # 将整数1赋值给变量a,将整数2赋值给变量b

但是,a, b = 1 这样的语法是不合法的,因为等号右侧只有一个元素(整数1),而左侧有两个变量(a和b)。

第29题

turtle.backward(-100)可以让turtle往头朝向的方向前进100。( )

答案:正确

在Python的turtle模块中,turtle.backward()方法用于让乌龟(turtle)向后移动一定的距离。当向后移动时,乌龟的头朝向保持不变,即朝向相反的方向。

如果使用负数作为参数,如turtle.backward(-100),则相当于给定一个正数作为参数,让乌龟向前移动。因为负数和正数的相反数相反,所以turtle.backward(-100)与turtle.forward(100)效果是一样的,都是让乌龟往头朝向的方向前进100个单位长度。

第30题

使用下边的代码,可以打印出图片展示的结果。( )

print("春,夏。
秋,冬。")

在这里插入图片描述

答案:错误

使用给定的代码是无法打印出图片展示的结果的。原因是代码中的字符串在语法上是错误的。

在Python中,字符串通常需要使用引号(单引号或双引号)括起来,以表示字符串的起始和结束。在给定的代码中,字符串中的换行符会导致语法错误。正确的写法应该是:

print("春,夏。\n秋,冬。")

在上述代码中,\n是转义字符,用于表示换行。通过使用转义字符\n,可以在字符串中实现换行的效果,从而在打印时显示为两行文字。

第31题

Python只能在自带的IDLE上面运行。( )

答案:错误

Python可以在多个集成开发环境(IDE)和文本编辑器中运行,而不仅仅局限于自带的IDLE。

IDLE是Python的官方集成开发环境,它提供了一种简单的方式来编写、运行和调试Python代码。但是,Python也可以在其他第三方IDE和文本编辑器中运行,例如:

  • PyCharm

  • Visual Studio Code

  • Jupyter Notebook

  • Sublime Text

  • Atom

  • Spyder

  • Emacs

  • Vim

这些工具提供了更多的功能和定制选项,以满足不同开发者的需求。因此,Python并不仅限于在自带的IDLE上运行,而是可以在多种开发环境中进行开发和运行。

第32题

Abc、aBc、abC是三个不同的变量。( )

答案:正确

在Python中,变量名是区分大小写的,因此Abc、aBc和abC被视为三个不同的变量。

第33题

print('I’m ok. ')因为有三个单引号,所以程序是错误的。( )

答案:正确

给定的代码 print('I'm ok. ') 是错误的,因为字符串中的单引号没有正确转义。

正确的写法应该是:

print('I\'m ok. ')

通过使用转义字符 \ 来转义单引号,可以使其成为字符串的一部分,而不是字符串的结束标记。这样,代码就可以正确地打印出字符串 “I’m ok.”。

第34题

表达式not 6>2的值为True。( )

答案:错误

表达式 not 6>2 的值为 False。

在这个表达式中,6>2 是一个比较表达式,它判断 6 是否大于 2,这个判断是正确的,因为 6 确实大于 2。然而,前面有一个 not 运算符,它的作用是对后面的表达式结果进行逻辑取反。

由于 6>2 的结果为 True,取反后的结果就是 False。因此,not 6>2 的值为 False。

第35题

Python语言简洁、易懂、库文件丰富,可以用在很多应用领域。( )

答案:正确

Python语言以其简洁、易懂的语法而闻名,并且具有丰富的库文件,使其适用于各种应用领域。Python被广泛用于Web开发、数据分析、人工智能、科学计算、自动化脚本等领域。它具有简单易学的语法,使得初学者能够快速上手,并且有大量的第三方库和工具,可以帮助开发人员更高效地完成各种任务。因此,Python是一种非常灵活和多用途的编程语言。

三、编程题(共2题,共30分)

第36题

“天狗吃月亮”是一个古老的神话,以前古人不了解月食这一现象,所以说月亮被狗吃了,天狗吃月亮是古人对“月食”这一天文现象的简称。月食是自然界的一种现象,当太阳、地球、月球三者恰好或几乎在同一条直线上时(地球在太阳和月球之间),太阳到月球的光线便会部分或完全地被地球遮挡,产生月食。请你设计一段程序完成下列图片的月食现象。
要求:
(1)海龟的初始位置的坐标为(0,0),月食现象的图片需在整个画布中完整呈现;
(2)月食现象由两个圆或点组成,分别为半径不同的黄色和白色的圆或点;
(3)绘制半径为150的圆或点,并填充颜色为黄色,该图形的中心位置为画布的正中心位置(0,0);
(4)绘制半径为75的圆或点,并填充颜色为白色,该图形的中心位置坐标为(150,0)。

2022年06月 Python(一级)真题解析#中国电子学会#全国青少年软件编程等级考试_第4张图片

答案:

以下是使用Python的turtle模块绘制月食现象的程序:

import turtle

# 设置画布大小
turtle.setup(800, 600)

# 创建海龟对象
t = turtle.Turtle()

# 绘制黄色圆形
t.penup()
t.goto(0, -150)
t.pendown()
t.begin_fill()
t.color("yellow")
t.circle(150)
t.end_fill()

# 绘制白色圆形
t.penup()
t.goto(150, -75)
t.pendown()
t.begin_fill()
t.color("white")
t.circle(75)
t.end_fill()

# 隐藏海龟
t.hideturtle()

# 程序结束时不自动退出
turtle.done()

这段程序使用turtle模块创建了一个海龟对象,并通过一系列的绘图命令绘制了黄色和白色的圆形,模拟了月食现象。黄色圆形的半径为150,白色圆形的半径为75,它们分别位于画布的中心位置和坐标为(150, 0)的位置。最后,程序通过turtle.done()命令保持窗口打开,直到手动关闭。

第37题

计算长方形的面积
要求:
(1)利用input()语句输入长方形的长和宽;
(2)利用运算符*,求得长方形的面积;
(3)利用print()语句输出长方形的面积。
输入格式:
第一次输入一个数字,代表长方形的长;
第二次输入一个数字,代表长方形的宽。
(输入有相应的提示信息,如:‘请输入长方形的长:’ )
输出格式:
输出长方形的面积。(输出有相应的提示信息,如:‘长方形的面积为:’)

答案:

以下是计算长方形面积的Python程序:

# 输入长方形的长和宽
length = float(input("请输入长方形的长:"))
width = float(input("请输入长方形的宽:"))

# 计算长方形的面积
area = length * width

# 输出长方形的面积
print("长方形的面积为:", area)

这段程序使用input()函数分别获取用户输入的长和宽,并将其转换为浮点数类型。然后,通过将长度和宽度相乘,计算长方形的面积并将结果存储在变量area中。最后,使用print()函数输出长方形的面积,其中包含相应的提示信息。

你可能感兴趣的:(python,等级考试,电子学会)