资源描述
【编程】青少年编程等级考试Python编程二级试卷1
一、选择题
1.小新编制了一种python程序如下,但程序无法执行,你帮他找出程序中一共有几处错误( )
1a=3
b=input()
c=a+b
print("c")
A.1 B.2 C.3 D.4
2.下面Python程序段运行后输出成果是( )
x=3
if x%2==0:
print(x, "是偶数。")
else:
print(x, "是奇数。")
A.3是奇数 B.x, "是偶数" C.x, "是奇数" D.3是偶数
3.有关Python语句P = –P,如下选项中描述对是( )
A.P和P负数相等 B.P和P绝对值相等
C.将P赋值为它相反数 D.P值为0
4.有如下 VB 程序段:
s1 = "python": s2 = "visual"
i = 1: j = 1: s = ""
Do While i <= Len(s1) And j <= Len(s2)
If Mid(s1, i, 1) >= Mid(s2, j, 1) Then
s = s + Mid(s1, i, 1)
Else
j = j + 1
End If
i = i + 1
Loop
执行该程序后,j值是( )
A.2 B.3 C.5 D. 7
5.队列在Python中,用( )实现队列创立,队列基本操作:( )( )( )( )线性数据构造又称线性表。
A.随机;入队;出队;求队长;判队空 B.列表;入队;出队;求队长;判队空
C.列表;随机;出队;求队长;判队空 D.入队;随机;列表;求队长;判队空
6.下列有有关print命令描述中,对是( )
A.在打印机里打印有关文本或者数字等
B.可以用来画图
C.在屏幕中输出对应文本或者数字等
D.执行语句print(“python”,3.7)时会出错
7.在python中,运行下列程序,对成果是( )。
A.i=4 s=10 B.i=5 s=10 C.i=5 s=15 D.i=6 s=15
8.在python中运行print(“3+6”)成果是( )。
A.9 B.“3+6” C.3+6 D.“9”
9.Python语言自带IDLE环境退出命令是( )
A.Esc B.close C.回车键 D.exit
10.在Python中,显示出信息x,并规定输入数据是( )。
A.abs(x) B.float(x) C.print(x) D.input(x)
11.根据Python中变量命名遵照规则,对是( )
A.char21 B.Py C.Python D.name.ch
12.下列哪个语句在Python中是非法?( )
A.x=y=z=1 B.x=(y=z+1) C.x,y=y,x D.x+=y
13.在Python中print(8+7%2**2)执行成果是( )
A.5 B.1 C.6 D.11
14.Python中print(66!=66)成果是( )。
A.1 B.0 C.True D.False
15.Python输入函数为( )。
A.time() B.round() C.input( ) D.print()
二、程序填空
16.学校气象小组使用自动测温仪在校园测量了1月12日气温,并运用Python绘制了这天气温图,该图如下所示:
(1)在以上Python程序中,变量Y数据类型是_________。
(2)在以上Python程序中,第8行横线处代码是_________。
(3)通过观测,气温釆样间隔时间是_________个小时。
17.密码强度检测。编写python程序,实现如下功能:输入要检测密码,输出密码强度成果。密码字符分为数字字符、字母和其他符号三类。密码强度检测措施为:若密码位数少于8位,则不进行强度检测,给出提醒“密码位数不能少于8位,请重新输入!”。若密码位数在8位及以上,则进行强度检测:若密码字符属于同一类字符,则密码强度为“弱”;若密码字符属于不一样二类字符,则密码强度为“中等”;若密码字符属于不一样三类字符,则密码强度为“强”。
(1)若输入“12abcd5!”,则输出成果为_________(选填,选字母:A.密码位数不能少于8位,请重新输入! / B.弱 / C.中等 / D.强)
(2)实现上述功能程序如下,请在划线处填入合适代码。
password=input(“请输入要检测密码:”)
①_______________
if n<8:
print(“密码位数不能少于8位,请重新输入!”)
else:
n1=0
n2=0
n3=0
for i in range(0,n,1):
②_______
if “0”<=ch<=“9”:
n1=1
elif “a”<=ch<=“z” or “A”<=ch<=“Z”:
n2=1
else:
n3=1
③_____
if x==3:
print(“强”)
elif x==2:
print(“中等”)
else:
print(“弱”)
18.已知6月份10位技术考试成绩:
1
2
3
4
5
6
7
8
9
10
78
88
89
90
83
76
75
98
100
65
技术老师想记录出80分(含80)以上人数,请完善程序,代码如下:
a=[78,88,89,90,83,76,75,98,100,65]
______
sum=0
for i in range(n):
if a[i]>=80:
________
print(sum)
执行上述程序段后,输出内容是______
19.“百鸡百钱”问题是一种有名数学问题,出自《张丘建算经》。其内容是:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?
打开文献“考生文献夹\644\百鸡百钱.py”,完善程序实现如下功能并保留。
(1)请不要更改源程序构造,删除原题里①、②、③。填写对代码,使程序完善。
(2)运行程序,运行成果如图所示。
# 请不要更改源程序构造,删除原题里①、②、③。填写对代码,使程序完善
money=100 #一共100文钱
num=100 #一共100只鸡
cock_price=5 #公鸡价格5文
hen_price=3 #母鸡价格3文
threechick_price=1 #3只小鸡1文
for cock_num in range(1,money//cock_price+1): #公鸡只数也许为1-20
for hen_num in range(1,①________): #母鸡只数也许为1-33
for chick_num in range(1,②________): #(3小鸡)只数也许为1-100
money1=cock_num*cock_price+hen_num*hen_price+chick_num*threechick_price
num1=cock_num+hen_num+chick_num*3
if money1==money and num1==num:
print (cock_num,hen_num,③________) #(③小鸡数)
input("运行完毕,请按回车键退出...")
20.输入一行字符,分别记录出其中英文字母、空格、数字和其他字符个数。
21.程序编写
求1+22+32+……+1002成果
_______________________________
_______________________________
_______________________________
_______________________________
input(“运行完毕,请按回车键退出...”)
【参照答案】***试卷处理标识,请不要删除
一、选择题
1.C
【详解】
本题考察Python程序语法
Python变量命名不能以数字开头、变量b、c必须先定义后使用。故有3处错误,故本题选C选项
解析:C
【详解】
本题考察Python程序语法
Python变量命名不能以数字开头、变量b、c必须先定义后使用。故有3处错误,故本题选C选项
2.A
【详解】
本题重要考察Python程序执行。x=3,3%2=1,故输出3是奇数,故本题选A选项。
解析:A
【详解】
本题重要考察Python程序执行。x=3,3%2=1,故输出3是奇数,故本题选A选项。
3.C
【详解】
本题重要考察Python语句。P = –P是赋值语句,将P赋值为它相反数,故本题选C选项。
解析:C
【详解】
本题重要考察Python语句。P = –P是赋值语句,将P赋值为它相反数,故本题选C选项。
4.C
【详解】
本题重要考察VB程序执行。分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2每一种字符,若s1中字符不小于或等于s2中字符,则将s1中对应字
解析:C
【详解】
本题重要考察VB程序执行。分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2每一种字符,若s1中字符不小于或等于s2中字符,则将s1中对应字符拼接到变量s中,否则变量j递增。第一遍循环,i=1,j=1,“p”<“v”,j=j+1=2,i=i+1=2;第二遍循环,“y”>“i”,i=i+1=3;第三遍循环,“t”>“i”,i=i+1=4;第四遍循环,“h”<“i”,j=j+1=3,i=i+1=5;第五遍循环,“o”<“s”,j=j+1=4,i=i+1=6;第六遍循环,“n”<“u”,j=j+1=5,i=i+1=7,循环结束,故执行该程序后,j值是5,故本题选C选项。
5.B
【详解】
本题考察数据构造有关知识。在Python中,用列表实现队列创立,队列基本操作:入队,出队,求队长,判队空线性数据构造又称线性表。因此B选项对。
【点睛】
解析:B
【详解】
本题考察数据构造有关知识。在Python中,用列表实现队列创立,队列基本操作:入队,出队,求队长,判队空线性数据构造又称线性表。因此B选项对。
【点睛】
6.C
【详解】
本题重要考察print函数。print命令在屏幕中输出对应文本或者数字等,执行语句print(“python”,3.7)成果是python 3.7,故本题选C选项。
解析:C
【详解】
本题重要考察print函数。print命令在屏幕中输出对应文本或者数字等,执行语句print(“python”,3.7)成果是python 3.7,故本题选C选项。
7.A
【详解】
本题重要考察Python程序执行。for i in range(1,5)可知变量i范围是1-4,程序运行完,s=s+i=0+1+2+3+4=10,故本题选A选项。
解析:A
【详解】
本题重要考察Python程序执行。for i in range(1,5)可知变量i范围是1-4,程序运行完,s=s+i=0+1+2+3+4=10,故本题选A选项。
8.C
【详解】
本题考察是python中print函数。print(str)#str是任意一种字符串,数字等。“3+6”是字符串故输出为:3+6,选项C对。
解析:C
【详解】
本题考察是python中print函数。print(str)#str是任意一种字符串,数字等。“3+6”是字符串故输出为:3+6,选项C对。
9.D
【详解】
本题重要考察Python基本知识。Python程序设计语言默认安装时,会有一种自带集成开发环境IDLE。要创立Python程序文献,可以运用IDLE中“文献“菜单。可使用exit(
解析:D
【详解】
本题重要考察Python基本知识。Python程序设计语言默认安装时,会有一种自带集成开发环境IDLE。要创立Python程序文献,可以运用IDLE中“文献“菜单。可使用exit()或quit()退出Python,因此D选项对。
【点睛】
10.D
【详解】
本题重要考察Python常用函数。abs(x)是返回x绝对值,float() 函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。
解析:D
【详解】
本题重要考察Python常用函数。abs(x)是返回x绝对值,float() 函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。
11.A
【详解】
本题考察是Python变量名命名规则。Python中变量命名规则:由字母、数字、下划线构成,不能以数字开头,系统保留字不能作为变量名。故本题应选A。
解析:A
【详解】
本题考察是Python变量名命名规则。Python中变量命名规则:由字母、数字、下划线构成,不能以数字开头,系统保留字不能作为变量名。故本题应选A。
12.B
【详解】
本题重要考察Python程序语句。x=y=z=1(给变量x、y、z均赋值为1),x,y=y,x(互换x和y值),x+=y等价于x=x+y,x=(y=z+1)是非法语句,故本题选B
解析:B
【详解】
本题重要考察Python程序语句。x=y=z=1(给变量x、y、z均赋值为1),x,y=y,x(互换x和y值),x+=y等价于x=x+y,x=(y=z+1)是非法语句,故本题选B选项。
13.D
【详解】
本题考察是Python体现式。**是幂次方优先级最高,%是求余。8+7%2**2=8+7%4=8+3=11,print是输出语句。故选项D对。
解析:D
【详解】
本题考察是Python体现式。**是幂次方优先级最高,%是求余。8+7%2**2=8+7%4=8+3=11,print是输出语句。故选项D对。
14.D
【详解】
本题重要考察Python体现式运算。体现式66!=66值为False,故print(66!=66)成果是False,故本题选D选项。
解析:D
【详解】
本题重要考察Python体现式运算。体现式66!=66值为False,故print(66!=66)成果是False,故本题选D选项。
15.C
【详解】
本题考察是Python函数。input( )是输入函数,print()是输出函数。故选项C对。
解析:C
【详解】
本题考察是Python函数。input( )是输入函数,print()是输出函数。故选项C对。
二、程序填空
16.list plt.plot(X,Y) 2
【详解】
本题重要考察Python程序调试与执行。①由代码Y=[6,4,4,3,3,6,9,12,12,11,9,7],可知变量Y数据类型是list(列表类型)。②scatter是绘制散点图函数,图中还需要使用绘图函数plot,故第8行横线处代码是plt.plot(X,Y)。③通过观测,气温釆样间隔时间是2个小时。
17.D n=len(password) ch=password[i] x=n1+n2+n3
【详解】
本题重要考察Python程序执行与调试。①“12abcd5!”具有三类字符,则输出成果为强,选D选项。②此处取密码长度,将其赋给变量n,len()是返回字符串长度,故填n=len(password)。③ch是取密码每一位进行判断,故此处填ch=password[i]。④当出现数字时n1=1,当出现字母时n2=1,当出现其他字符时n3=1,x用来记录有几类字符,故此处填x=n1+n2+n3。
18.①n=len(a) sum+=1或sum=sum+1 6
【详解】
本题重要考察Python程序调试与执行。①变量n用来保留数组a长度,使用len函数,故此处填n=len(a)。②使用for循环记录出80分(含80)以上人数,用变量sum记录满足条件人数,当满足if条件时,sum变量递增,故此处填sum+=1或sum=sum+1。③执行上述程序段后,sum=6,故输出内容是6。
19.34或 money//hen_price+1 101 或 money//threechick_price+1 chick_num*3
【详解】
本题重要考察Python程序执行与调试。①母鸡只数也许为1-33,对比最外层循环范围,第一空填34或 money//hen_price+1。②小鸡只数也许为1-100,同理第二空填101 或 money//threechick_price+1。③公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,故第三空填chick_num*3。
20.s = input('input a string:')
letter = 0 # 记录字母
space = 0 # 记录空格
digit = 0 # 记录数字
other = 0 # 记录其他字符
for c in s:
if c.isalpha():
letter += 1
elif c.isspace():
space += 1
elif c.isdigit():
digit += 1
else:
other += 1
print("字母:",letter,"空格:", space,"数字:",digit,"其他字符:", other)
【详解】
本题重要考察程序设计。题干规定可通过Python程序实现,使用for循环、多条件分支构造。其中实现分别记录出其中英文字母、空格、数字和其他字符个数可通过函数isalpha、isspace、isdigit来判断记录,详细代码如下:
s = input('input a string:')
letter = 0 # 记录字母
space = 0 # 记录空格
digit = 0 # 记录数字
other = 0 # 记录其他字符
for c in s:
if c.isalpha():
letter += 1
elif c.isspace():
space += 1
elif c.isdigit():
digit += 1
else:
other += 1
print("字母:",letter,"空格:", space,"数字:",digit,"其他字符:", other)
21.total=0 #变量可任选(符合规则) for i in range(1,101): total=total+i*i #total=total+i**2 print(total)
【详解】
本题重要考察Python程序编写。①变量total用来记录最终计算成果,其初始值为0,故填total=0 #变量可任选(符合规则)。②求1+22+32+……+1002成果,用for循环构造,变量i范围是从1到100,故填for i in range(1,101):。③计算语句是total=total+i*i #total=total+i**2。④最终用print()函数输出计算成果total,故填print(total)。
展开阅读全文