202206青少年软件编程(Python)等级考试试卷(一级)
一、单选题(共25题,共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语法的一部分。正确的缩进对于代码的执行和逻辑非常重要。在Pyhon中,缩进用于表示代码块的层次结构,而不是简单的格式化要求。
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. 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.
B.
C.
D.
解析: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。在这个表达式中,a和b是字符串类型。使用 +运算符可以将两个字符串进行拼接。所以,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。在 turt1e 模块中, 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。函数 turt1e.home()用于将海龟(turle)的位置重置为原点(0,0)。当调用 turtle.home()后海龟将回到画布的中心位置。
19. turtle绘图中设置画笔宽度5像素、绘制的线条颜色为red的命令是?( )
解析:C。函数 turt1e.pensize()用于设置画笔的宽度,参数为像素值。在这种情况下,我们将画笔宽度设置为5像素。函数 turt1e.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. 想要画出如下图形,第④行代码应该是?( )
① 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. 下列程序绘制的是一个什么图形?( )
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题,共20分)
26. 运行下列python代码后可绘制出下面的半径为50的圆形。( )
解析:错误。运行该Python代码后无法绘制出半径为50的圆形。原因是缺少落笔命令。正确的代码是:
这样,turtle会先抬起画笔,然后移动到圆心位置,再放下画笔,最后绘制出半径为50的红色圆形。
27. Python源文件以.Py及.Pyw作为文件扩展名,但它实际上是一个文本文件,在保存时可以使用任何名字来进行文件命名。( )
解析:错误。
28. a,b=1是一条合法的赋值语句,将1分别赋值给变量a和b。( )
解析:错误。a,b=1不是一条合法的赋值语句,将整数1分别赋值给变量a和b。在Python中,对于多个变量的同时赋值,需要确保等号两边的元素数量相等。例如,以下是合法的多个变量同时赋值的示例:
或者:
但是,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中,字符串通常需要使用引号(单引号或双引号)括起来,以表示字符串的起始和结束。在给定的代码中,字符串中的换行符会导致语法错误。正确的写法应该是:
。
在上述代码中,\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.’),使用了单引号来定义字符串,并在字符串中使用了转义字符(\)来转义单引号,以确保它被识别为字符串的一部分。这样的使用是正确的。
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)。
程序实现:
程序实现:
这段程序使用turtle模块创建了一个海龟对象,并通过一系列的绘图命令绘制了黄色和白色的圆形,模拟了月食现象。黄色圆形的半径为150,白色圆形的半径为75,它们分别位于画布的中心位置和坐标为(150.0)的位置。最后,程序通过 turt1e.done()命令保持窗口打开,直到手动关闭,
评分标准:
1)正确导入turtle库;(2分)
2)正确绘制半径为150的圆或点,这里使用turtle.circle()指令、turtle.dot()指令均可;(2分)
3)黄色的园(或者点)坐标位置正确;(2分)
4)正确填充颜色为黄色;(3分)
5)正确移动至坐标(150,0);(4分)
6)正确绘制半径为75的圆或点,这里使用turtle.circle()指令、turtle.dot()指令均可;(4分)
7)正确填充颜色为白色。(3分)
37. 计算长方形的面积
要求:
- 利用input()语句输入长方形的长和宽;2)利用运算符*,求得长方形的面积;
3)利用print()语句输出长方形的面积。
输入格式:
第一次输入一个数字,代表长方形的长;
第二次输入一个数字,代表长方形的宽。(输入有相应的提示信息,如:'请输入长方形的长:' )
输出格式:
输出长方形的面积。(输出有相应的提示信息,如:'长方形的面积为:')
程序实现:
评分标准:
1)用input()输入长方形的长和宽(2分),并且带有提示信息;(1分)
2)将输入的长宽转换为int或者eval数据类型;(2分)
3)利用运算符*计算出面积;(2分)
4)用print()输入长方形的面积(2分),并带有提示信息。(1分)