中国电子学会青少年软件编程等级考试标准python二级优质word练习.docx
- 文档编号:23243380
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:29
- 大小:356.93KB
中国电子学会青少年软件编程等级考试标准python二级优质word练习.docx
《中国电子学会青少年软件编程等级考试标准python二级优质word练习.docx》由会员分享,可在线阅读,更多相关《中国电子学会青少年软件编程等级考试标准python二级优质word练习.docx(29页珍藏版)》请在冰豆网上搜索。
中国电子学会青少年软件编程等级考试标准python二级优质word练习
中国电子学会青少年软件编程等级考试标准python二级优质word练习
一、选择题
1.下面哪个不是Python合法的标识符()
A.int_3B.30XLC.selfD._abc
2.下列选项中,可以作为Python程序变量名的是()
A.a/bB.abC.a+bD.a-b
3.下列可以作为python变量名的是()
A.5xB.x-1C.ifD.x_1
4.已知字符串a="python",则a[-1]的值为()
A."p"B."n"C."y"D."o"
5.已知a=6,b=-4,则Python表达式a/2+b%2*3的值为()
A.3B.3.0C.5D.5.0
6.小林编写一段文件读写操作代码,文件如图,代码段如下:
file=open('ceshi.txt','w')
file.write("pythonisaprogramminglanguage.")
file.close()
file=open('ceshi.txt','r')
print(file.read())
该代码段运行后,输出的结果为()
A.IADistributedSystemBasedonPython.
B.pythonisaprogramminglanguage.
C.IADistributedSystemBasedonPython.pythonisaprogramminglanguage.
D.程序编译错误,不会输出结果
7.下列选项中,属于Python输出函数的是()。
A.random()B.print()C.sqrt()D.input()
8.Python不支持的数据类型有()。
A.charB.intC.floatD.list
9.下列选项中,可作为Python变量名的是()
A.intB.AbcC.floatD.Complex
10.下列不可以用来搭建本地服务器的软件是()。
①Python②Excel③IIS④Apache
A.①②B.③④C.①②③④D.①②④
11.下列序列拼接错误的是()
A.list=[None]*4
B.msg=“Python”,”语言”
C.tup=“/”.join((“123”,”234”))
D.set={1,2,3}+{4,5,6}
12.把数式
写成Python语言的表达式,下列书写正确的是()。
A.a+b/2aB.a+b/2*aC.(a+b)/2*aD.(a+b)/(2*a)
13.下面哪个不是Python合法的标识符( )
A.int32B.40XLC.selfD.__name__
14.Python输入函数为()。
A.time()B.round()C.input()D.print()
15.如图Python代码执行后,a,b的值分别为:
()
A.5,10B.10,5C.5,5D.10,10
16.下列哪条赋值语句在Python中是非法的:
()
A.X=Y=Z=1B.X=(Y=Z+1)C.X,Y=Y,XD.X+=Y
17.小王编写了出租车收费的python程序,代码如下:
s1=float(input('请输入行驶路程(公里):
'))
ifs1<=3:
f=10
elifs1<=10:
f=10+2.5*(s1-3)
else:
f=27.5+3.5*(s1-10)
print(f)
要测试所有分支程序代码是否正确,以下测试数据中,最恰当的一组是()
A.3,8B.-1,5,12
C.1,6,20D.3,12,20
18.下列有关信息的说法,不正确的是()。
A.Python程序设计语言也是一种信息
B.给微信朋友圈点赞也是一种信息评价方式
C.信息在传输过程中,必须遵循一定的规则
D.对相关数据进行加工处理,使数据之间建立相互联系,从而形成信息
19.运行下列Python程序,结果正确的是()
s="abcdefg"
c=len(s)#len求字符串长度
foriinrange(0,c):
ifi<2:
print(chr(ord(s[i])+2),end="")#ord()函数是chr()函数配对函数,将字符转ASCII值
else:
print(chr(ord(s[i])+3),end="")
A.cdfghaB.cdfghbC.cdfghijD.cdfghc
20.王明编写了Python程序,根据输入的体重和身高计算BM值并显示是否超标。
王明体重80kg,身高170cm。
其中“体重80kg”“身高170cm”是对王明体重身高的符号记录属于()
A.数据B.信息C.知识D.智慧
21.两个阻值分别为R1、R2的电阻并联后,电路阻值R可由公式求解,下面能正确求出R的Python表达式是()
A.(R1+R2)/(R1*R2)B.R1+R2/(R1*R2)
C.R1*R2/R1+R2D.R1*R2/(R1+R2)
22.Python中变量的命名遵循的规则,不正确的是()
A.必须以字母或下划线开头,后面可以是字母、数字或下划线。
B.区分大小写
C.不区分大小写
D.不能使用保留字
23.以下python程序段执行后,输出结果为()
m=29
Ifm%3!
=0:
print(m,"不能被3整除")
else:
print(m,"能被3整除")
A.29不能被3整除B.m不能被3整除C.29能被3整除D.m能被3整除
24.在python中,有程序如下
A=input()
print(A*5)
通过键盘输入5,则运算结果是()
A.55555B.25C.5*5D.55
25.下列python表达式中,值为字符串类型的是()
①Abs(x)②“abc”*3③“123+45”④123+45⑤a=input(“请输入a的值:
”)
A.①③⑤B.②④⑤C.①②③D.②③⑤
26.在Python中,数据的输入是通过()来实现的。
A.input()函数B.print()函数C.bool()函数D.abs()函数
27.下列Python程序段运行的结果是()
x=0
foriinrange(1,20,3):
x=x+i
print(x)
A.80B.190C.70D.210
28.在python中,下列哪个选项是正确的赋值语句()
A.5s=80B.2018=xC.a+b=cD.s=s+5
29.已知字符串a="python",则a[1:
3]的值为()
A."pyth"B."pyt"C."py"D."yt"
30.在python中,语句print(a,b)的意思是()
A.打印a,bB.输出(a,b)C.输出a,bD.输出a,b的值
二、程序填空
31.请编写Python程序,实现如下功能需求:
1)程序运行后,给出文字提示:
“请输入一个正整数:
”
2)输入一个整数n按回车后,程序输出从1-n所有整数中既是3的倍数又是5的倍数的数。
3)不要超过5行代码。
程序运行举例:
32.使用Python自身提供的IDLE集成开发环境录入以下代码及调试
运行,检测结果。
#鸡兔同笼
forxinrange(1,23):
y=35-x
if4*x+2*y==94:
print("兔子有%s只,鸡有%s只"%(x,y))
特别提示:
代码录入完毕,调试运行,检测错误,讨论错误原因,上网查找错误格式的处置办法,直至能正确输出结果。
33.阅读程序。
分析以下Python程序并回答问题。
who='我的'
action='是'
destination='镜像世界'
number='153'
code='通行密码'
print(who+destination+code+action+str(number))
(1)变量who的数据类型_______________。
(2)类似number的数据类型______________。
(3)print语句输出的结果是______________。
(4)str(number)的作用是_________。
(5)“+”在程序中的作用是____________。
34.阅读程序。
观察使用随机数求解百钱白鸡问题的代码并回答问题。
百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?
”翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?
importrandom
whileTrue:
x=random.randrange(0,20)
y=random.randrange(0,33)
z=random.randrange(0,100)
if5*x+3*y+z/3==100andx+y+z==100:
print('公鸡',x)
print('母鸡',y)
print('小鸡',z)
(1)Python中导入库文件的命令是________。
(2)random.randrange(0,20)生成的随机数的范围是_________
。
(3)如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为
________
(4)whileTrue的作用是______。
(5)如果whileTrue造成程序无法停止,我们可以在程序中添加一行_________。
35.某种数据加密方法描述如下(加密前数据是ASCII字符):
●以8个数据为一段,将n个待加密数据依次分割成若干个数据段,剩余数据(个数小于8)为独立数据段。
●数据加密规则:
数据个数等于8的数据段,对各个字符进行位置变换;数据个数小于8的数据段,不进行位置变换。
位置变换:
用位置变换密钥数组c,将数据段每个字符进行位置变换,方法如下:
加密后某数据段的第i个元素=对应原数据段的第c(i)个元素,其中i=1,2,……,8。
数值变换:
位置变换后,依次取出各个字符进行数值变换:
把该字符的ASCII码转二进制,然后与密钥m对应的二进制数(m为1到255之间的整数)按位异或运算。
异或运算(⊕)规则:
如果a、b两个值不相同,则a⊕b结果为1;如果a、b两个值相同,则a⊕b结果为0,即:
0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0。
●把上述处理的得到二进制数依次拼接,即构成最后的加密数据例如,待加密数据为“python3.50”,数组c各元素的值依次是
数组c
3
6
1
5
2
8
4
7
则数据位置变换如下:
如值变换密钥m为35(二进制表示是00100011),则字符“t”(ASCII码值是116,二进制表示是010100)的数值变换过程如下:
变换前
0
1
1
1
0
1
0
0
密钥m
0
0
1
0
0
0
1
1
变换后
0
1
0
1
0
1
1
1
(1)已知“A”的ASCII码值是65,m=35,则“A”数值变换后的结果是_______(填二进制数据)。
(2)小李根据上述算法,设计了一个数据加密程序,其VB代码如下,请在划线处填入合适的代码。
Constn=1024
Dimc(1To8)AsInteger
PrivateSubForm_Load()
‘产生位置变换密钥数组c,代码略
EndSub
Functionconvert(cAsInteger)AsString
‘程序功能:
把整数c转成8位二进制数,代码略
EndFunction
PrivateSubCommand1_Click()
DimsAsString,stAsString,ssAsString,resAsString
DimiAsInteger,jAsIntegerstartAsInteger
Dima(1Ton)AsString,b(1Ton)AsString
s=Text1.Text
st=convert(Val(Text2.Text))
Fori=1ToLen(s)
a(i)=Mid(s,i,1)
Nexti
i=1:
start=-8
DoWhile①________
IfiMod8=1Thenstart=start+8
b(i)=②_______
i=i+1
Loop
Forj=iToLen(s)
b(j)=a(j)
Nextj
Fori=1ToLen(s)
③________
Forj=1To8
IfMid(ss,j,1)=Mid(st,j,1)Then
res=res+"0"Elseres=res+"1"
'按位异或
Nextj
Nexti
Text3.Text=res
EndSub
36.求解a到b内(包含a和b)所有的质数,并对每个质数的每一位数字求和。
请完善程序。
程序如下:
importmath
defIsPrime(i):
ifi==1:
returnFalse
forjinrange(2,int(math.sqrt(i))+1):
if____:
returnFalse
returnTrue
a=int(input("请输入a:
"))
b=int(input("请输入b:
"))
summ=0
foriinrange(a,b+1):
ifIsPrime(i):
________
whilet>0:
summ=summ+t%10
_________
print("数字和为:
",summ)
37.操作说明:
打开文件“Y:
/2/2.py”,在代码窗口指定位置<1>、<2>处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。
以下程序段的功能是:
输入一个正整数n(1至100),输出它的约数的个数。
s=0
n=int(input(“请输入一个正整数:
”))
ifn<1orn>100:
exit#输入的数不符合要求,退出
foriinrange(1,n+1):
ifn//i=0:
___<1>
s=s+i<2>
print(“约数的个数是:
”,s)
38.哥德巴赫在1742年提出了以下猜想:
任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。
importmath
defss(n):
Flag=True
i=2
whilei<=int(math.sqrt(n))andFlag:
if_____________
Flag=False
_____________
returnFlag
n=int(input(“输入一个大于2的偶数”))
foriinrang(2,n//2+1):
if____________
print(str(n)+"="+str(i)+"+"+str(n-i))
如果输入“8”则结果显示_____
39.利用for循环,分别计算1--100中奇数的和、偶数的和。
40.程序分析题
学校举行校园歌手大赛,评委由6人组成。
评分方法:
去掉一个最高分和一个最低分,计算其余4位评委的平均分,作为选手的最终得分。
max记录最高分;min记录最低分;s记录六位评委的总分;aver记录最终得分。
第1步:
从文本框中分别读入6位评委的打分并依次存入到a
(1)至a(6)中
第2步:
将第1位评委的打分a
(1)分别赋给最高分max,最低分min和总分S
第3步:
利用循环结构把另外5位评委的打分累加给s从而求出6位评委的总分s,同时把5位评委的打分与max和min进行比较,得出6位评委中的最高分max和最低分min。
第4步:
从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分。
max=a[0]
min=a[0]
s=0
foriinrange(6):
s=s+a[i]
ifa[i]>max:
max=a[i]
ifa[i] min=a[i] aver=()/4 (1)在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由______控件生成的。 A.EntryB.LabelC.FrameD.Button (2)题目中算法描述采用的是__________A、自然语言B、伪代码C、流程图D、.N-S图 (3)下列程序代码片段对应于算法描述中的第2步至第4步。 请填写片段中空白处的表达式填写完整________ 【参考答案】***试卷处理标记,请不要删除 一、选择题 1.B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故30XL不是Python合法的标识符,故本题选B选项。 解析: B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故30XL不是Python合法的标识符,故本题选B选项。 2.B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故ab可以作为Python程序变量名,故本题选B选项。 解析: B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故ab可以作为Python程序变量名,故本题选B选项。 3.D 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故x_1可以作为Python变量名,故本题选D选项。 解析: D 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故x_1可以作为Python变量名,故本题选D选项。 4.B 【详解】 本题主要考查Python序列索引值。 任意长度的字符串,最后一个元素的索引值是-1,故a[-1]的值为"n",故本题选B选项。 解析: B 【详解】 本题主要考查Python序列索引值。 任意长度的字符串,最后一个元素的索引值是-1,故a[-1]的值为"n",故本题选B选项。 5.B 【详解】 本题主要考查Python表达式的运算。 a=6,b=-4,a/2+b%2*3=6/2+(-4%2*3)=3.0+0=3.0,故本题选B选项。 解析: B 【详解】 本题主要考查Python表达式的运算。 a=6,b=-4,a/2+b%2*3=6/2+(-4%2*3)=3.0+0=3.0,故本题选B选项。 6.B 【详解】 本题主要考查Python文件读写操作。 首先打开ceshi.txt文件进行写操作,写入pythonisaprogramminglanguage.会覆盖之前的内容,故该代码段运行后 解析: B 【详解】 本题主要考查Python文件读写操作。 首先打开ceshi.txt文件进行写操作,写入pythonisaprogramminglanguage.会覆盖之前的内容,故该代码段运行后,输出的结果为pythonisaprogramminglanguage.,故本题选B选项。 7.B 【详解】 本题考查的是Python函数。 print()是Python输出函数;input()是Python输入函数。 故选项B正确。 解析: B 【详解】 本题考查的是Python函数。 print()是Python输出函数;input()是Python输入函数。 故选项B正确。 8.A 【详解】 本题考查Python数据类型相关的知识点 Python不支持char类型、byte类型。 故本题选A选项 解析: A 【详解】 本题考查Python数据类型相关的知识点 Python不支持char类型、byte类型。 故本题选A选项 9.B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故可作为Python变量名的是Abc,故本题选B选项。 解析: B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故可作为Python变量名的是Abc,故本题选B选项。 10.A 【详解】 本题考查服务器的相关知识点 ①Python脚本语言②Excel处理表格软件③IISInternet信息服务可以搭建服务器④Apache可以搭建阿帕奇服务器。 故①②不可 解析: A 【详解】 本题考查服务器的相关知识点 ①Python脚本语言②Excel处理表格软件③IISInternet信息服务可以搭建服务器④Apache可以搭建阿帕奇服务器。 故①②不可以用来搭建本地服务器。 故选A选项 11.D 【详解】 本题主要考查Python序列拼接运算。 set={}生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。 解析: D 【详解】 本题主要考查Python序列拼接运算。 set={}生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。 12.D 【详解】 本题主要考查Python表达式。 Python中乘号用符号“*”,运算优先级可以通过小括号提升,小括号优先级最高,故本题选D选项。 解析: D 【详解】 本题主要考查Python表达式。 Python中乘号用符号“*”,运算优先级可以通过小括号提升,小括号优先级最高,故本题选D选项。 13.B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故40XL不是Python合法的标识符,故本题选B选项。 解析: B 【详解】 本题主要考查Python变量的命名。 变量的命名规则有: 只能以字母或下划线开头,不能包含特殊符号,不能是关键字。 故40XL不是Python合法的标识符,故本题选B选项。 14.C 【详解】 本题考查的是Python函数。 input()是输入函数,print()是输出函数。 故选项C正确。 解析: C 【详解】 本题考查的是Python函数。 input(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中国 电子 学会 青少年 软件 编程 等级 考试 标准 python 二级 优质 word 练习