全国计算机等级考试二级Python真题及解析5精品.docx
《全国计算机等级考试二级Python真题及解析5精品.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级Python真题及解析5精品.docx(13页珍藏版)》请在冰豆网上搜索。
![全国计算机等级考试二级Python真题及解析5精品.docx](https://file1.bdocx.com/fileroot1/2023-2/1/b00a90d5-5e84-4e2b-bd9c-076ece73f9e7/b00a90d5-5e84-4e2b-bd9c-076ece73f9e71.gif)
全国计算机等级考试二级Python真题及解析5精品
全国计算机等级考试二级Python真题及解析5精品
一、选择题
1.下列选项中,能作为python程序变量名的是()
A.ifB.2xC.a*bD.x2
2.要利用Python通过数组绘制拟合曲线图,必须要用到的外部库是()
A.time库
B.random库
C.turtle库
D.matplotlib库
3.在Python程序设计语言中,用于输入和输出的函数分别是()
A.read()和write( )B.input()和output( )
C.input()和print( )D.cin()和cout()
4.现有如下python程序段:
foriinrange(6):
p.append(int(random()*10)+1)
foriinrange(2,6):
ifi%2==1andp[i]%2==0:
p[i]+=p[i-1]
elifi%2==0andp[i]%2==1:
p[i]-=p[i-1]
执行该程序段后,在下列选项中,列表p中的元素值不可能的是()
A.1,2,3,4,7,2
B.1,2,14,-9,-5,8
C.6,8,1,4,6,10
D.6,4,14,-7,3,8
5.Python中变量的命名遵循的规则,不正确的是()
A.以字母或下划线开头,后面可以是字母、数字或下划线。
B.区分大小写
C.以数字开头,后面可以是字母、数字或下划线。
D.不能使用保留字
6.以下python程序段运行后,y的值是()
x=3
ifx>3:
y=2*x
else:
y=3*x+1
print(y)
A.10B.5C.25D.26
7.有python程序如下:
S=input()
print(S*3)
运行后通过键盘输入6,则运算结果是()
A.666B.SSSC.18D.S*3
8.Python使用函数()接收用输入的数据
A.accept()B.input()C.readline()D.print()
9.下列选项中,属于Python输出函数的是()。
A.random()B.print()C.sqrt()D.input()
10.在Python中,表达式(21%4)+5的值是()
A.2B.6C.10D.3
11.以下()是python文件
A.*.mp3B.*.xlsC.*.pptD.*py
12.已知a=6,b=-4,则Python表达式a/2+b%2*3的值为()
A.3B.3.0C.5D.5.0
13.下列变量名在Python中合法的是()
A.36BB.F55#C.forD._Good
14.下列选项中,可以作为Python程序变量名的是()
A.a/bB.abC.a+bD.a-b
15.下列语言中()不属于高级语言
A.pythonB.VCC.JAVAD.汇编语言
二、程序填空
16.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。
为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。
一般情况下,规模N=1时,问题的解是已知的。
已知:
从1到n的连续自然数相乘的积、叫做阶乘、用符号n!
表示。
如5!
=1×2×3×4×5,规定0!
=1。
我们用递归算法可以较容易求n的阶乘。
求n的阶乘算法可以描述如下:
n!
=n*(n-1)!
(n-1)!
=(n-1)*(n-2)!
(n-2)!
=(n-2)*(n-3)!
2!
=2*1!
1!
=0!
0!
=1
如果把n!
写成函数形式,即f(n),f(n)=n*f(n-1)。
如f(5)就是表示5!
,求5!
的过程可以写成如下形式:
f(5)=5*f(4)f(4)=4*f(3)f(3)=3*f
(2)f
(2)=2*f
(1)f
(1)=1
(问题求解)在python中用递归算法求1!
+2!
+……+n!
(n的值为整数,从键盘输入)。
请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。
deff(n):
ifn==0:
return1
else:
return_________
s=0
n=int(input("请输入n:
"))
foriin_______:
s=________
print(s)
17.小强开展网上直播售货,为此购买了以下直播硬件设备:
①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器
请回答下列问题:
(1)在购买的直播硬件设备中,属于模数转换的设备是__________(多选,填序号)
(2)小强选择借助某著名直播平台售货,根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:
1,在不考虑视频传输优化的情况下,问小强家目前10Mbps的宽带__________(选填:
能/不能)满足直播要求。
请列式证明__________。
(3)小强将某一天的售货情况从平台导出,保存为文件shqk.xlsx.数据已按“流水号”升序排序,如图a所示。
流水号为2019030602的售货记录中,已成交的商品类别数是__________(填写数字),该流水号的总利润是__________元(填写数字,保留1位小数)
图a
(4)为了快速了解各类别商品的利润,小强用python编程处理。
处理的结果界面如图b所示。
部分代码如下,请在①②划线处填写合适的代码。
图b
importpandasaspd
importnumpyasnp
importmatplotlib.pyplotasplt
detail=pD.read_excel(___)
print(detail)
foriinrange(len(detail[:
])):
ifdetail[‘成交与否’][i]==1:
detail[‘lirun’]=___
dg=detai1[[‘类别’,‘lirun’]].groupby(by=‘类别’)
print(“总利润”,detail[‘lirun’].sum())
’数据可视化代码略
18.在一千多年前的《孙子算经》中,有这样一道算术题:
“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?
”。
即一个数除以3余2,除以5余3,除以7余2,求这个数。
i=①________
while(i%3!
=2②________i%5!
=3ori%7!
=2):
i=③________
print(i)
19.分析完善程序
[背景知识]为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。
如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。
(提示:
①所有车牌号中都含有数字,并且车牌号的长度都是6;②以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。
)如:
请根据上述算法描述补全代码
s=input("车牌号s=")
n=6
x=s[n-1:
n]
whilex.isdigit()==False:
①
x=s[n-1:
n]
if②==0:
print(“双号”)
else:
print(“单号”)
(提示:
s[n:
m]的功能:
从字符串s的
下标为n的元素开始,截取到下标为m-1的元素。
例如:
s="12345",s[2:
4]="34"。
s.isdigit):
判断是否为数字。
)
(1)根据题意,程序中空白①处应填写:
______
(2)根据题意,程序中空白②处应填写:
______(填:
A/B/C/D)。
A.int(x)/2==0B.int(x)%2==0C.int(x)%2=0D.int(x)%2!
=0
20.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
**
***
****
21.冠军在A、B、C、D四位同学中。
A说:
“不是我”,B说:
“是C”,C说:
“是D”,D说:
“C说的不对”,已知四人中有一人说了假话。
判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['A','B','C','D']#设置选手列表
foriin__________:
#循环读取选手编号
cond=(i!
='A')+(i=='C')+(i=='D')+(i!
='D')#查找符合条件的选手
ifcond==_____:
#说真话是否是3人
print("冠军是:
",_________)#输出冠军
input("运行完毕,请按回车键退出...")
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故能作为python程序变量名的是x2,故本题选D选项。
解析:
D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故能作为python程序变量名的是x2,故本题选D选项。
2.D
【详解】
本题主要考查Python库。
time库是python处理时间数据的标准库,random库用于生成各种分布的随机数,turtle库是Python语言中一个很流行的绘制图像的函数库,mat
解析:
D
【详解】
本题主要考查Python库。
time库是python处理时间数据的标准库,random库用于生成各种分布的随机数,turtle库是Python语言中一个很流行的绘制图像的函数库,matplotlib库用于绘制曲线图,故本题选D选项。
3.C
【详解】
本题主要考查Python程序设计语言中的输入和输出函数。
input()函数返回值默认是字符串。
print()函数默认是输出后换行。
因此C选项正确。
【点睛】
解析:
C
【详解】
本题主要考查Python程序设计语言中的输入和输出函数。
input()函数返回值默认是字符串。
print()函数默认是输出后换行。
因此C选项正确。
【点睛】
4.BD
【详解】
本题主要考查Python程序执行。
第一个for循环生成列表p,值是[1,10]之间随机整数,第二个for循环处理后4个元素,当i是奇数且生成的p[i]是偶数,则将前一个值累加到p[i
解析:
BD
【详解】
本题主要考查Python程序执行。
第一个for循环生成列表p,值是[1,10]之间随机整数,第二个for循环处理后4个元素,当i是奇数且生成的p[i]是偶数,则将前一个值累加到p[i],若i是偶数且生成的p[i]是奇数,则p[i]减去前一个值,分析选项B、D第三个元素14,此时i=2,如果p[2]原来生成的是奇数,则需要执行p[i]-=p[i-1],否则不变,即p[2]不会大于10,故执行该程序段后,列表p中的元素值不可能是1,2,14,-9,-5,8或6,4,14,-7,3,8,故本题选BD选项。
5.C
【详解】
本题考查的是变量名的命名规则。
Python中变量的命名遵循的规则:
以字母或下划线开头,后面可以是字母、数字或下划线;区分大小写;不能使用保留字。
故选项C不正确。
解析:
C
【详解】
本题考查的是变量名的命名规则。
Python中变量的命名遵循的规则:
以字母或下划线开头,后面可以是字母、数字或下划线;区分大小写;不能使用保留字。
故选项C不正确。
6.A
【详解】
本题主要考查Python程序的执行。
x=3,不满足x>3,执行y=3*x+1=10,故本题选A选项。
解析:
A
【详解】
本题主要考查Python程序的执行。
x=3,不满足x>3,执行y=3*x+1=10,故本题选A选项。
7.A
【详解】
本题主要考查Python程序的执行。
input()函数是通过键盘输入,将其以字符类型返回,故S=“6”,输出S*3=“666”,故运算结果是666,故本题选A选项。
解析:
A
【详解】
本题主要考查Python程序的执行。
input()函数是通过键盘输入,将其以字符类型返回,故S=“6”,输出S*3=“666”,故运算结果是666,故本题选A选项。
8.B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()
解析:
B
【详解】
本题主要考查Python函数。
accept()接受一个客户端的连接请求并返回一个新的套接字,input函数用于数据的输入,readline()函数用于读取文件中的一行,print()函数用于打印输出数据,故本题选B选项。
9.B
【详解】
本题考查的是Python函数。
print()是Python输出函数;input()是Python输入函数。
故选项B正确。
解析:
B
【详解】
本题考查的是Python函数。
print()是Python输出函数;input()是Python输入函数。
故选项B正确。
10.B
【详解】
本题主要考查Python表达式的运算。
(21%4)+5=1+5=6,故表达式(21%4)+5的值是6,故本题选B选项。
解析:
B
【详解】
本题主要考查Python表达式的运算。
(21%4)+5=1+5=6,故表达式(21%4)+5的值是6,故本题选B选项。
11.D
【详解】
本题考查的是文件类型相关知识。
Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
解析:
D
【详解】
本题考查的是文件类型相关知识。
Mp3是音频文件,xls是Excel文件,ppt演示文稿文件,py是python文件,故选项D正确。
12.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选项。
13.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
解析:
D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
14.B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故ab可以作为Python程序变量名,故本题选B选项。
解析:
B
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故ab可以作为Python程序变量名,故本题选B选项。
15.D
【详解】
本题主要考查程序设计语言。
python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。
解析:
D
【详解】
本题主要考查程序设计语言。
python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。
二、程序填空
16.n*f(n-1)range(1,n+1)s+f(i)
【详解】
本题主要考查Python程序的执行与调试。
①此处是定义递归函数f(n),由题干,当n=0时,返回1,否则返回n*f(n-1),故此处填n*f(n-1)。
②用递归算法求1!
+2!
+……+n!
,故变量i的范围应是1—n,foriinrange(1,n+1)表示i的范围是[1,n],故此处填range(1,n+1)。
③循环体实现累加,将每一项阶乘f(i)加到s中,故此处填s+f(i)。
17.①④不能1080*1920*24*25*1/1024/1024/100≈10.8Mbps,大于网络传输带宽10Mbps,所以不能满足直播要求。
12或2.0‘shqk.xlsx’或“shqk.xlsx”(detai1[‘售价’]-detail[‘进价’])*detai1[‘数量’]
【详解】
本题主要考查Python程序设计相关知识点。
①手机、数码照相机均属于模数转换的设备,可以实现模拟信号与数字信号的转换,故填①④。
②根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:
1,在不考虑视频传输优化的情况下,小强家目前10Mbps的宽带不能满足直播要求。
③视频存储容量=像素*颜色深度*帧频*时长,1080*1920*24*25*1/1024/1024/100≈10.8Mbps,大于网络传输带宽10Mbps,所以不能满足直播要求。
④由图可知,1表示成交,0表示未成交,流水号为2019030602的售货记录中,已成交的商品类别数是1,都是饮料(即货号17和货号5)。
⑤该流水号的总利润是(2.9-2.5)*3+(1-0.8)*4=2.0,故填2或2.0。
⑥该表格文件名是shqk.xlsx,此处读入该表格文件,故填‘shqk.xlsx’或“shqk.xlsx”。
⑦利润=(售价-进价)*数量,数据已经读到detail中,故此处填(detai1[‘售价’]-detail[‘进价’])*detai1[‘数量’]。
18.ori+1
【详解】
本题主要考查Python程序执行与调试。
①分析程序可知,程序采用枚举的算法找出该数,当不满足条件时,i递增继续判断,故i的初始值是0,第一空填0。
②一个数除以3余2,除以5余3,除以7余2,此处是取不满足情况时,i递增,and取反变为or,故第二空填or。
③同理第三空填i+1。
19.n=n-1或n-=1B
【详解】
本题主要考查算法及Python程序设计。
①此处是判断x是否为数字,若不是数字,则n递减取前一位字符继续进行判断,故此处填n=n-1或n-=1。
②当while循环结束,表明此时x为数字,若int(x)%2==0,即x为偶数,输出“双号”,否则输出单号,故选B选项。
20.layer=int(input("请输入需要打印的层数:
"))
forxinrange(1,layer+1):
foryinrange(1,x+1):
print("*",end="")
print("")
【详解】
本题主要考查Python循环结构。
Pythonfor循环可以遍历任何序列的项目,如一个列表或者一个字符串。
range可以生成一个整数列表,列表范围根据接收的layer来确定。
外层循环用于确定输出行数,内层循环用于控制每行符号个数。
【点睛】
21.champion3i
【详解】
本题主要考查Python程序的执行。
①champion是选手编号列表,此处是循环读取选手编号,使用foriinchampion,故此处填champion。
②四人中有一人说了假话,即3个人说真话,即当cond=3时,则表示找到了谁是冠军,故此处填3。
③当cond是3时,i即为冠军,故此处填i。