编程中国电子学会青少年软件编程等级考试标准python二级练习.docx
《编程中国电子学会青少年软件编程等级考试标准python二级练习.docx》由会员分享,可在线阅读,更多相关《编程中国电子学会青少年软件编程等级考试标准python二级练习.docx(30页珍藏版)》请在冰点文库上搜索。
编程中国电子学会青少年软件编程等级考试标准python二级练习
【编程】中国电子学会青少年软件编程等级考试标准python二级练习
一、选择题
1.Python不支持的数据类型有()。
A.charB.intC.floatD.list
2.()不是程序设计高级语言。
A.Python
B.Basic
C.C++
D.伪代码
3.除python语言之处,还有很多其他程序设计语言。
程序设计语言经历了从机器语言、汇编语言到高级语言的发展过程。
其中python语言是属于()。
A.机器语言B.高级语言C.汇编语言D.自然语言
4.已知字符串a="python",则a[-1]的值为()
A."p"B."n"C."y"D."o"
5.以下()是python文件
A.*.mp3B.*.xlsC.*.pptD.*py
6.下列选项中,合法的Python变量名是()
A.printB.speedC.PD.a#2
7.下图是python34安装后目录文件的磁盘文件存储结构,下列说法错误的是()
A.图中文件存储结构为树结构,python34为树的根结点(父节点)
B.图中python34根结点有4个子结点
C.图中python34根结点下有5个子树(子结点)
D.图中Tools是python34的子树(子结点)
8.已知字符串s1="python",s2="Python",则表达式中s1>s2的值为()
A.“python”B.“Python”C.TrueD.False
9.利用Word软件编辑了一篇关于“Python简介”的文档,部分界面如图所示,下列说法正确的是()
A.该文档中的有2个用户添加了2处批注
B.该文档中图片采用的环绕方式为上下型
C.该文档中总共有4处修订
D.若要对文档中所有的“Python”文字设置为“红色倾斜”格式,用自动更正功能最合适
10.Python使用函数()接收用输入的数据
A.accept()B.input()C.readline()D.print()
11.Python中用来声明字符串变量的关键字是()
A.strB.intC.floatD.char
12.下列不是Python程序基本结构的是()。
A.顺序结构B.树形结构C.分支结构D.循环结构
13.Python表达式中,可以使用()控制运算的优先顺序。
A.圆括号()B.方括号[]C.大括号{}D.尖括号<>
14.在Python中要交换变量a和b中的值,应使用的语句组是()
A.a,b=b,aB.a=c;a=b;b=c
C.a=b;b=aD.c=a;b=a;b=c
15.在Python中,已知a=3,b=5,运行下列程序段后,a和b的值为
a=a*b
b=a//b
a=a//b
A.a=3b=5B.a=15b=3C.a=5b=5D.a=5b=3
16.在Python中,下面代码的运行结果是()
x=365
g=x%10#%为求余的意思
s=x//10%10#//为整除的意思
b=x//100
sum=g*100+s*10+b#sum英文是求和的意思
print(sum)
A.365B.14C.563D.41
17.下列有关信息的说法,不正确的是()。
A.Python程序设计语言也是一种信息
B.给微信朋友圈点赞也是一种信息评价方式
C.信息在传输过程中,必须遵循一定的规则
D.对相关数据进行加工处理,使数据之间建立相互联系,从而形成信息
18.运行下列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
19.两个阻值分别为R1、R2的电阻并联后,电路阻值R可由公式求解,下面能正确求出R的Python表达式是()
A.(R1+R2)/(R1*R2)B.R1+R2/(R1*R2)
C.R1*R2/R1+R2D.R1*R2/(R1+R2)
20.队列在Python中,用()实现队列的创建,队列的基本操作:
()()()()线性数据结构又称线性表。
A.随机;入队;出队;求队长;判队空B.列表;入队;出队;求队长;判队空
C.列表;随机;出队;求队长;判队空D.入队;随机;列表;求队长;判队空
21.小林同学想要利用Python来编写一道程序,解决“1+2+3+……+100”这个问题,那么小林同学在编写程序的过程中可能会用到哪些语句()
A.赋值语句
B.循环语句
C.条件语句
D.输出语句
22.计算机语言发展大致经历了机器语言、汇编语言和高级语言阶段。
可以被计算机直接执行的语言是(),Python语言属于()语言。
A.机器,高级B.高级,汇编C.高级,机器D.汇编,高级
23.在VB中,下列与表达式Len("python")+20的值相等的是()
A.Int(Rnd*26)+1B.Val("20")+16mod9
C.Mid("Hello2019",6,2)+"6"D.abs(Sqr(16)–30)
24.要利用Python通过数组绘制拟合曲线图,必须要用到的外部库是()
A.time库
B.random库
C.turtle库
D.matplotlib库
25.下列Python程序段运行的结果是()。
i=0
sum=0
whilei<10:
ifi%2==0:
sum+=i
i+=2
print("sum=",sum)
A.sum=17B.sum=18C.sum=19D.sum=20
26.利用Python程序绘制x-y的散点图,则下列程序第5行应该填写的代码是()。
A.plt.plot(X,Y)B.plt.scatter(X,Y)
C.plt.bar(X,Y)D.plt.boxplot(X,Y)
27.关于python中的函数,以下描述错误的是()。
A.函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可
B.使用函数的主要目的是减低编程难度和代码重用
C.Python使用del保留字定义一个函数
D.函数是一段具有特定功能的语句组
28.关于python发布代码及安装使用代码,下列说法错误的是()
A.创建一个文件夹mymodule,其中包含mymodule.py和setup.py(包含发布的元数据)两个文件
B.在DOS命令行中打开mymodule所在的目录,使用“pythonsetup.pysdist”命令构建发布文件
C.已经构建发布的模块必须先导入程序,然后才能使用。
导入时只能使用语句“importmymodule”,不可以用“frommymoduleimport*”
D.下载安装,使用“pythonsetup.pyinstall”命令安装到你的Python本地副本中
29.已知字符串a="python",则a[1]的值为()
A."p"B."py"C."Py"D."y"
30.下列属于计算机编程语言的有()
①Python②VisualBasic③Java④C++⑤CPU
A.①②④⑤B.②③④⑤C.①②③④D.①③④
二、程序填空
31.奇偶校验码是一种增加二进制传输系统可靠性的简单且广泛采用的方法,该方法通过增加一个校验位使得传输的二进制码中“1”的个数恒为奇数或偶数,因此该校验码也分为“奇校验”和“偶校验”。
“奇校验”的原理:
在发送端发送的每个字节二进制码后增加一个校验位(0或1),使得“1”的个数为奇数;接收端接收并统计每个字节及其校验位中“1”的个数,若为偶数,则意味着传输过程中存在差错。
例如:
接收到的每个字节及校验码
1的个数
传输正误
100101001
4
错误
011010101
5
正确
101011010
5
正确
根据以上原理,小强编写了一个Python程序,对接收到的9位二进制编码进行“奇校验”,判断其传输的正误,若判断正确则将前一个字节的编码转成十六进制并输出。
请回答下列问题:
(1)若接收到的二进制码为“101011011”,传输过程__________(选填:
是/否)存在差错。
(2)实现上述功能的Python程序如下,请在划线处填入合适的代码。
s=input("请输入9位二进制编码:
")
code={10:
"A",11:
"B",12:
"C",13:
"D",14:
"E",15:
"F"}
k=0;p=0;ans=“”
foriins:
#统计9位二进制编码中“1”的个数
k=k+int(i)
if____:
print("传输错误!
")
else:
print("传输正确!
")
forjinrange(0,8,4):
p=int(s[j:
j+4],2)
#int(x,[base]):
将x(字符串或者数字)按照base进制转换成整数
if0<=p<=9:
ans=ans+str(p)
else:
ans=___
print("字节编码用十六进制表示:
",___
32.模拟一个简单计算器,实现如下功能:
输入两个整数和一个运算符(加、减、乘、除),进行算术运算,并输出运算结果。
程序运行时,依次输入第一个数、运算符和第二个数,输出运算结果。
当输入的运算符是加减乘除(+-*/)四种以外的符号时,则输出“运算符不正确”。
当进行除法运算时,如果除数为“0”,提示输出“除数不能为0!
”。
Python程序实现如下,在划线处填入合适的代码。
a=int(input("请输入第一个数:
"))
fh=input("请输入运算符:
")
b=int(input("请输入第二个数:
"))
flag=True
s=____
iffhins:
iffh=="+":
c=a+b
eliffh=="-":
c=a-b
eliffh=="*":
c=a*b
else:
if____
print("除数不能为0!
")
flag=False
else:
c=a/b
ifflag==True:
print("运算的结果为:
"+____)
else:
print("运算符不正确")
33.猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。
34.编写程序,找到并输出100以内的偶数个数。
35.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:
能被4整除但不能被100整除或能被400整除,闰年的2月为29天)
day=input("请输入年月日(格式举例:
2000-01-05):
")
year=int(day[:
4])
month=_________
sun=int(day[8:
10])
print(year,month,sun)
f_run=[31,28,31,30,31,30,31,31,30,31,30,31]
tall_day=0
if______:
foriinrange(month-1):
tall_day+=f_run[i]
__________
else:
foriinrange(month-1):
tall_day+=f_run[i]
tall_day+=sun
print(day+"是当年的第"+str(tall_day)+"天")
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
36.编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。
得到的数字应按逗号分隔的顺序打印在一行上。
提示:
考虑使用range(#begin,#end)
37.以下是计算s=1+6+11+...+101的程序代码,请补全程序。
s=0
foriinrange(1,102, ):
s=
print(s)
请补充完成上述程序①_________②_________
38.编写程序,找到并输出100以内的素数。
39.将下列程序代码补充完整:
某同学参加了学校体检,体检的医生告诉他体重超重,需要加强运动。
该同学了解到运动时,心率如能控制在一定范围内,对增强心血管系统和呼吸系统的功能都有很好的效果;超出范围,对身体反而会有损伤。
男最适宜运动心率=(220-年龄数-安静心率)×(60%~80%)+安静心率,女最适宜运动心率=(210-年龄数-安静心率)×(60%~80%)+安静心率,补充程序帮他(她)计算最适宜的运动心率。
age=float(input('请输入age='))
HRrest=float(input('请输入HRrest='))
gender=input(“请输入maleorfemale:
”)
if____________________:
____________________
else:
_____________________
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
print('最适宜的心率是:
',low,'~',high)
input(“运行完毕,请按回车键退出...”)
40.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。
其内容是:
公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?
(1)请在空格处填写正确的代码,使程序完善实现以下功能。
money=100#一共100文钱
num=100#一共100只鸡
cock_price=5#公鸡价格5文
hen_price=3#母鸡价格3文
threechick_price=1#3只小鸡1文
forcock_numinrange(1,_______):
#公鸡只数可能为1-20
forhen_numinrange(1,_________):
#母鸡只数可能为1-33
forchick_numinrange(1,101):
#(3小鸡)只数可能为1-100
money1=cock_num*cock_price+hen_num*hen_price+chick_num/threechick_price
num1=cock_num+hen_num+chick_num
ifmoney1==moneyandnum1==num:
print(cock_num,hen_num,__________)
input("运行完毕,请按回车键退出...")
(2)运行程序,运行结果如图所示。
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.A
【详解】
本题考查Python数据类型相关的知识点
Python不支持char类型、byte类型。
故本题选A选项
解析:
A
【详解】
本题考查Python数据类型相关的知识点
Python不支持char类型、byte类型。
故本题选A选项
2.D
【详解】
本题考查程序设计语言的相关知识点
程序设计高级语言包括Python、Basic、C++等,伪代码不能执行,不是程序设计高级语言。
故本题选D选项
解析:
D
【详解】
本题考查程序设计语言的相关知识点
程序设计高级语言包括Python、Basic、C++等,伪代码不能执行,不是程序设计高级语言。
故本题选D选项
3.B
【详解】
本题考查的是计算机语音相关知识。
高级语言是一种独立于机器,面向过程或对象的语言。
python语言是一种面向对象的动态类型语言,故选项B正确。
解析:
B
【详解】
本题考查的是计算机语音相关知识。
高级语言是一种独立于机器,面向过程或对象的语言。
python语言是一种面向对象的动态类型语言,故选项B正确。
4.B
【详解】
本题主要考查Python序列索引值。
任意长度的字符串,最后一个元素的索引值是-1,故a[-1]的值为"n",故本题选B选项。
解析:
B
【详解】
本题主要考查Python序列索引值。
任意长度的字符串,最后一个元素的索引值是-1,故a[-1]的值为"n",故本题选B选项。
5.D
【详解】
本题考查的是文件类型相关知识。
Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
解析:
D
【详解】
本题考查的是文件类型相关知识。
Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
6.B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。
解析:
B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故合法的Python变量名是speed,故本题选B选项。
7.B
【详解】
本题主要考查计算机文件存储结构。
由图可知,图中文件存储结构为树结构,python34为树的根结点(父节点);图中python34根结点有8个子结点;图中python34根结点下有5个子
解析:
B
【详解】
本题主要考查计算机文件存储结构。
由图可知,图中文件存储结构为树结构,python34为树的根结点(父节点);图中python34根结点有8个子结点;图中python34根结点下有5个子树(子结点);图中Tools是python34的子树(子结点),故本题选B选项。
8.C
【详解】
本题主要考查Python字符串。
比较字符串的大小,是将两个字符串的字符一一比较它们的ASCII值,小写字母的ASCII值大于大写字母,故表达式中s1>s2的值为True,故本题选C选项
解析:
C
【详解】
本题主要考查Python字符串。
比较字符串的大小,是将两个字符串的字符一一比较它们的ASCII值,小写字母的ASCII值大于大写字母,故表达式中s1>s2的值为True,故本题选C选项。
9.C
【详解】
本题考查WORD相关知识。
该文档中的有1个用户a添加了2处批注,A错。
该文档中图片采用的环绕方式为四周或者紧密,但不是上下型,B错。
若要对文档中所有的Python文字设置为红色倾斜格式
解析:
C
【详解】
本题考查WORD相关知识。
该文档中的有1个用户a添加了2处批注,A错。
该文档中图片采用的环绕方式为四周或者紧密,但不是上下型,B错。
若要对文档中所有的Python文字设置为红色倾斜格式,则用替换功能。
选项C的说法正确。
10.B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()
解析:
B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()函数用于打印输出数据,故本题选B选项。
11.A
【详解】
本题主要考查Python变量。
Python中,int是整型,str是字符串型,float是浮点型,故本题选A选项。
解析:
A
【详解】
本题主要考查Python变量。
Python中,int是整型,str是字符串型,float是浮点型,故本题选A选项。
12.B
【详解】
本题考查Python相关知识。
程序基本结构的是顺序结构,分支结构和循环结构。
选项B不是程序基本结构,这是一种数据结构。
解析:
B
【详解】
本题考查Python相关知识。
程序基本结构的是顺序结构,分支结构和循环结构。
选项B不是程序基本结构,这是一种数据结构。
13.A
【详解】
本题考查Python运算顺序相关的知识点
Python表达式中,可以使用圆括号()控制运算的优先顺序。
故本题选A选项
解析:
A
【详解】
本题考查Python运算顺序相关的知识点
Python表达式中,可以使用圆括号()控制运算的优先顺序。
故本题选A选项
14.A
【详解】
本题考查Python语句。
在Python中要交换变量a和b中的值,可以使用的语句组是t=a;a=b;b=t也可以是a,b=b,a,故本题选A。
解析:
A
【详解】
本题考查Python语句。
在Python中要交换变量a和b中的值,可以使用的语句组是t=a;a=b;b=t也可以是a,b=b,a,故本题选A。
15.D
【详解】
本题主要考查Python表达式的运行。
a=3,b=5,a=a*b=15,b=a//b=15//5=3,a=a//b=15//3=5,故运行下列程序段后,a和b的
解析:
D
【详解】
本题主要考查Python表达式的运行。
a=3,b=5,a=a*b=15,b=a//b=15//5=3,a=a//b=15//3=5,故运行下列程序段后,a和b的值为a=5b=3,故本题选D选项。
16.C
【详解】
本题主要考查Python基本运算。
%为求余,//为整除,程序实现了提取了变量x各位上的数值,然后倒置形成新数,因此C选项正确。
【点睛】
解析:
C
【详解】
本题主要考查Python基本运算。
%为求余,//为整除,程序实现了提取了变量x各位上的数值,然后倒置形成新数,因此C选项正确。
【点睛】
17.A
【详解】
本题考查的是信息相关知识。
信息是一种具体的含义,语言是信息的载体,故选项A错误;给微信朋友圈点赞是个人推荐,故选项B正确;表达信息时要遵照一定的标准,计算机、通信、网络等规范了一系列的
解析:
A
【详解】
本题考查的是信息相关知识。
信息是一种具体的含义,语言是信息的载体,故选项A错误;给微信朋友圈点赞是个人推荐,故选项B正确;表达信息时要遵照一定的标准,计算机、通信、网络等规范了一系列的协议,故选项C正确;对相关数据进行加工处理,使数据之间建立相互联系,从而形成信息,选项D正确。
18.C
【详解】
本题主要考查Python程序的执行。
c是字符串s的长度,变量i的范围是0~c-1,如果i<2,将该字符后移2位并输出,否则将该字符后移3位并输出,故程序运行的结果是