全国青少年软件编程(Python)等级考试试卷(三级)(1)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

全国青少年软件编程(Python)等级考试试卷(三级)(1)
一、选择题
1.以下对 Python 程序缩进格式描述错误的选项是()
A.不需要缩进的代码顶行写,前面不能留空白
B.缩进可以用 tab 键实现,也可以用多个空格实现
C.严格的缩进可以约束程序结构,可以多层缩进
D.缩进是用来格式美化 Python 程序的
2.下列选项中,能作为python程序变量名的是()
A.if B.2x C.a*b D.x2
3.在Python Shell环境下,依次执行下列语句后,显示结果()。

A.9 B.165 C.172 D.21
4.王明同学运用 Python语言编写程序,根据输入的体重和身高计算BM值并验算其体重指数是否超标,属于()
A.数据B.信息C.知识D.智慧
5.在 Python中常用的输入输出语句分别是()
A.input() output() B.input() print()
C.input() printf() D.scandf() printf()
6.我们可以对文本中词频较高的分词,通过词云图给予视觉上的突出,小明打算用Python程序来生成词云图,程序中需要用到以下哪个第三方库?()A.WordCloud B.math C.random D.turtle
7.有python程序如下
a=int(input())
b=int(input())
c=input()
if c=='+':
print(a+b)
elif c=='-':
print(a-b)
elif c=='*':
print(a*b)
elif c=='/':
print(a/b)
else:
print(“输入错误,请重试”)
当程序运行后,小新依次输入 9 2 *
程序输出结果应为()
A.18 B.11 C.7 D.4
8.python用来表示代码块所属关系(控制层级结构的)的语法符号是()
A.圆括号B.大括号C.缩进D.冒号9.Python中用来声明字符串变量的关键字是()
A.str B.int C.float D.char
10.运行Python程序的过程中出现了如下图错误提示,原因是()。

A.变量名51study太长
B.应该写成"chinese" =51study
C.“chinese”应该写成“chinaˈs”
D.变量名51study不符合python语言规范,变量名不能以数字开头
11.下列Python表达式中,能正确表示不等式方程|x|>1解的是()
A.x>1 or x<-1 B.x>-1 or x<1 C.x>1 and x<-1 D.x>-1 and x<1 12.已知列表list1=[88,22,34,89,67],则python表达式min(list1)的值为()A.22 B.88 C.89 D.67
13.以下叙述中正确的是()。

A.Python 3.x与Python 2.x兼容
B.Python语句只能以程序方式执行
C.Python是解释型语言
D.Python语言出现得晚,具有其他高级语言的一切优点
14.以下()是python文件
A.*.mp3B.*.xls C.*.ppt D.*py
15.在Python中,正确的赋值语句是()
A.x+y=10 B.x=2y C.x=y=50 D.3y=x+1
二、程序填空
16.广场上有许多(有数百人)小朋友在玩分组游戏,当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个。

编写程序求出这些小朋友的可能人数。

实现上述功能的程序如下,请在程序划线处填入合适的代码。

________
a=[ ]
for i in range(100,1000):
if_____________:
a.append(i)
total + = 1
print("这群小朋友总的人数有:")
for j in range(len(a)):
print(____,end='、')
print('')
print('可能情况数为:',total,'种')
划线处①处应该填入的语句为:;
划线处②处应该填入的语句为:;
划线处③处应该填入的语句为:。

17.程序设计:在舞会上,男生、女生各自排成一队。

舞会开始时,依次从男队和女队的队头各出一人配成舞伴。

跳完后的两人重新回到队尾。

例如:boy=['Alex','Steven','Jack'],girl=['Ada*,'Babs'.,'Danla','Jane']
输出:
Turn1:(Alex,Ada)
Turn2:(Steven,Babs)
Turn3:(Jack,Danla)
Turn4:(Alex,jane)
……
Turn12:(Jack,jane)
代码如下:
boy=['Alex','Steven',‘Jack']
girl=['Ada','Babs','Danla','Jane']
for i in range(12):
x,y=① #出队
print(“Turn{:2}):({},{})".format(i+1,x,y))
boy.append( ② ) #再进队
girl.append( ③ ) #再进队
(1)程序代码中①处正确的代码是(_______)。

A.boy.pop(l).girl.pop(l) B.girl.pop(l),boy.pop(l)
C.boy.pop(0),girl.pop(0) D.girl.pop(0),boy.pop(0)
(2)程序代码中②处正确的代码是(_______)。

A.x B.y C.i D.i+1
(3)程序代码中③处正确的代码是(_______)。

A.x B.y C.i D.i+1
18.程序设计:键盘输入任意的正整数,程序输出与其相应的二进制数。

代码如下:
n=int(input("请输入一个十进制数:"))
result=[]
while n>0:
result.append( ① )
n=②
result.reverse()
for i in result:
print(i,end=”)
(1)程序代码中①处正确的代码是(_______)。

A.n%2 B.n/2 C.n//2 D.n*2
(2)程序代码中②处可能的代码是(_______)。

A.n%2 B.n/2 C.n//2 D.n*2
19.哥德巴赫在1742年提出了以下猜想:任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。

import math
def ss(n):
Flag=True
i=2
while i <= int(math.sqrt(n))and Flag:
if _____________
Flag = False
_____________
return Flag
n=int(input(“输入一个大于2的偶数”))
for i in rang(2,n//2+1):
if____________
print(str(n)+"="+str(i)+"+"+str(n-i))
如果输入“8”则结果显示_____
20.编写程序。

信息社团的三个同学和Bruce一起做游戏,他们的游戏规则很简单,从1开始依次报数,每当一个数能被7整除或者十位是7就要跳过这个数,现在给出一个数N,请输入从1到N(包含N)中要跳过的数。

21.请在空格处填写正确的代码,使程序完善。

实现功能:用辗转相除法求解两个正整数的最大公约数。

x = int(input('请输入第一个正整数:'))
y = int(input('请输入第二个正整数:'))
m = max(x,y) #找出x,y中的最大值
n = min(x,y) #找出x,y中的最小值
r = m%n #求得最大值除以最小值后的余数
while r!=0: #如果余数不等0,则进行以下循环
m =________ #把最小值赋给m
n =_________ #把余数赋给n
r = m%n #求得最大值除以最小值后的余数
print('这两个数的最大公约数为:',______)
input("运行完毕,请按任意键退出....")
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python语法格式。

不需要缩进的代码顶行写,前面不能留空白;缩进可以用tab
键实现,也可以用多个空格实现;严格的缩进可以约束程序结构,可以多层缩进;缩进是代码书写规则
解析:D
【详解】
本题主要考查Python语法格式。

不需要缩进的代码顶行写,前面不能留空白;缩进可以用tab 键实现,也可以用多个空格实现;严格的缩进可以约束程序结构,可以多层缩进;缩进是代码书写规则要求,故本题选D选项。

2.D
【详解】
本题主要考查Python变量的命名。

变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。

故能作为python程序变量名的是x2,故本题选D选项。

解析:D
【详解】
本题主要考查Python变量的命名。

变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。

故能作为python程序变量名的是x2,故本题选D选项。

3.C
【详解】
本题主要考查Python函数。

max当接收的是列表,则返回列表中最大的元素,故执行下列语句后,显示结果172,故本题选C选项。

解析:C
【详解】
本题主要考查Python函数。

max当接收的是列表,则返回列表中最大的元素,故执行下列语句后,显示结果172,故本题选C选项。

4.D
【详解】
本题考查数据、信息、知识、智慧的概念。

数据经过加工,可表达某种意义,则转变为信息;信息经过加工,可用于指导实践,则转变为知识;智慧是人类基于已有的知识,针对物质世界运动过程中产生的问题
解析:D
【详解】
本题考查数据、信息、知识、智慧的概念。

数据经过加工,可表达某种意义,则转变为信息;信息经过加工,可用于指导实践,则转变为知识;智慧是人类基于已有的知识,针对物质世界运动过程中产生的问题根据获得的信息进行分析,对比,演绎找出解决方案的能力。

而本题中根据身高和体重提供的数据信息,结合Python知识编写相应的程序,从而进行算法设计程序编写来解决实际问题。

故属于智慧,选项D正确。

5.B
【详解】
本题考查的知识点是python的函数。

Python中常用的输入输出语句分别是input() print(),故选项B正确。

解析:B
【详解】
本题考查的知识点是python的函数。

Python中常用的输入输出语句分别是input() print(),故选项B正确。

6.A
【详解】
本题主要考查Python库。

WordCloud是优秀的词云展示第三方库,math库提供常用的数学函数,random提供常用的随机函数,turtle库用于绘图,故本题选A选项。

解析:A
【详解】
本题主要考查Python库。

WordCloud是优秀的词云展示第三方库,math库提供常用的数学函数,random提供常用的随机函数,turtle库用于绘图,故本题选A选项。

7.A
【详解】
本题考查Python程序段。

当程序运行后,小新依次输入9 2 *,即a=9,b=2,c=*,则elif c==‘*’:成立,执行print(a*b),结果为18,故本题选A。

解析:A
【详解】
本题考查Python程序段。

当程序运行后,小新依次输入9 2 *,即a=9,b=2,c=*,则elif c==‘*’:成立,执行print(a*b),结果为18,故本题选A。

8.C
【详解】
本题主要考查Python语法。

python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。

解析:C
【详解】
本题主要考查Python语法。

python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。

9.A
【详解】
本题主要考查Python变量。

Python中,int是整型,str是字符串型,float是浮点型,故本题选A选项。

解析:A
【详解】
本题主要考查Python变量。

Python中,int是整型,str是字符串型,float是浮点型,故本题选A选项。

10.D
【详解】
本题考查的是程序调试。

报错内容是“语法错误:无效语法”,变量名51study,数字不能作为变量名的开头,故D项正确。

解析:D
【详解】
本题考查的是程序调试。

报错内容是“语法错误:无效语法”,变量名51study,数字不能作为变量名的开头,故D项正确。

11.A
【详解】
本题主要考查Python表达式。

题干不等式方程可以写成x<-1 或者 x>1,用Python表示是x>1 or x<-1,故本题选A选项。

解析:A
【详解】
本题主要考查Python表达式。

题干不等式方程可以写成x<-1 或者 x>1,用Python表示是x>1 or x<-1,故本题选A选项。

12.A
【详解】
本题主要考查Python列表。

min是返回列表中的最小值,列表list1=[88,22,34,89,67],则python表达式min(list1)的值为22,故本题选A选项。

解析:A
【详解】
本题主要考查Python列表。

min是返回列表中的最小值,列表list1=[88,22,34,89,
67],则python表达式min(list1)的值为22,故本题选A选项。

13.C
【详解】
本题考查Python相关知识点
Python 3.x与Python 2.x版本不同,不兼容。

故选项A说法错误
Python语句也可以使用脚本直接运行。

故选项B说法错误
Python是解
解析:C
【详解】
本题考查Python相关知识点
Python 3.x与Python 2.x版本不同,不兼容。

故选项A说法错误
Python语句也可以使用脚本直接运行。

故选项B说法错误
Python是解释型语言。

故本题选C选项
Python不具有其他高级语言的一切优点。

故选项D说法错误
14.D
【详解】
本题考查的是文件类型相关知识。

Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。

解析:D
【详解】
本题考查的是文件类型相关知识。

Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。

15.C
【详解】
本题主要考查Python赋值语句。

变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。

赋值语句是将等号右边的表达式赋给左边的变量,x=y=50等价于x=50,y=
解析:C
【详解】
本题主要考查Python赋值语句。

变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。

赋值语句是将等号右边的表达式赋给左边的变量,x=y=50等价于x=50,y=50,故正确的赋值语句是x=y=50,故本题选C选项。

二、程序填空
16.total=0i%3 == 2 and i%5 == 3 and i%7 == 2a[j]
【详解】
本题主要考查Python程序的执行与调试。

①变量total用来统计有多少种情况,初始值为
0,第一空填total=0。

②当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个,即if判断条件为i%3 == 2 and i%5 == 3 and i%7 == 2,满足if条件时,将该值加到列表a中,故第二空填i%3 == 2 and i%5 == 3 and i%7 == 2。

③最后通过for循环输出所有可能的数,用变量j控制,故第三空填a[j]。

17.C A B
【详解】
本题主要考查队列数据结构及Python程序。

①队列是从队头出队,队尾入队,使用pop函数出队,队头的索引值是0,故此处填boy.pop(0),girl.pop(0)。

②队列入队使用append方法追加到队列尾,此处是男生入队boy.append(x),故选A选项。

③同理,此处是女生入队girl.append(y),故选B选项。

18.A C
【详解】
本题主要考查Python程序设计。

①此处将n取余2,用append函数将值追加到列表result 中,故此处填n%2,选A选项。

②当n大于0时,n整除2继续循环,循环结束使用reverse函数,将result列表中的元素逆转,故此处填n//2,选C选项。

19.n%i==0: i+=1 ss(i) and ss(n-i): 8=3+5
【详解】
本题主要考查Python程序的执行与调试。

①函数ss(n)用来判断n是否为质数,若是则返回True,否则返回False,此处是通过while循环逐个判断n是不是能整除i,故填
n%i==0:。

②若不满足if条件,则i递增,继续循环判断,故填i+=1。

③此处判断i与n-i是否都是质数,若是,则表明该偶数可以写成两个质数之和,并输出,故填ss(i) and ss(n-i):。

④如果输入“8”则结果显示8=3+5。

20.N=int(input("请输入一个数"))
for i in range(1,N+1):
if(i%7==0 or i/10==7):
print(i,end=" ")
【详解】
本题考查Python语言编程解决实际问题。

本题要找到能被7整除或者十位是7的数,并且这两个条件是或的关系,其关键代码为i%7==0 or i/10==7。

程序运行代码详见下图:
21.n r n
【详解】
本题考查的是Python循环语句。

辗转相除法:用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。

如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。

由n = min(x,y) 可知最小值为n,故①处为n,由r = m%n 可知余数为r,故②处为r,最后的除数是n(即最大公约数为n),故③处为n。

相关文档
最新文档