资料python软件编程等级考试二级编程实操题Word文档下载推荐.docx
《资料python软件编程等级考试二级编程实操题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《资料python软件编程等级考试二级编程实操题Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
①
y=k%100
if②:
print(“符合”)
else:
print(“不符合”)
划线处应填入的代码是()
A.①x=k/100②(x+y)*2!
=kB.①x=k//100②(x+y)*2==k
C.①x=k/100②(x+y)**2!
=kD.①x=k//100②(x+y)**2==k
9.Python语句"
ab"
+"
c"
*2的运行结果是()
A.abc2B.abcabcC.abccD.ababcc
10.下列不被python所支持的数据类型是()
A.charB.floatC.intD.list
11.以下python程序段运行后,y的值是()
x=3
ifx>
3:
y=2*x
else:
y=3*x+1
print(y)
A.10B.5C.25D.26
12.有python程序如下:
S=input()
print(S*3)
运行后通过键盘输入6,则运算结果是()
A.666B.SSSC.18D.S*3
13.利用Word软件编辑了一篇关于“Python简介”的文档,部分界面如图所示,下列说法正确的是()
A.该文档中的有2个用户添加了2处批注
B.该文档中图片采用的环绕方式为上下型
C.该文档中总共有4处修订
D.若要对文档中所有的“Python”文字设置为“红色倾斜”格式,用自动更正功能最合适
14.下列关于Python语言变量声明的说法中,正确的是()
A.Python中的变量不需要声明,变量的赋值操作即是变量声明和定义的过程
B.Python中的变量需要声明,变量的声明对应明确的声明语句
C.Python中的变量需要声明,每个变量在使用前都不需要赋值
D.Python中的变量不需要声明,每个变量在使用前都不需要赋值
15.以下Python程序运行后的输出结果为()
A.0B.45C.46D.362880
二、程序填空
16.密码强度检测。
编写python程序,实现如下功能:
输入要检测的密码,输出密码强度结果。
密码字符分为数字字符、字母和其他符号三类。
密码强度的检测方法为:
若密码位数少于8位,则不进行强度检测,给出提示“密码位数不能少于8位,请重新输入!
”。
若密码位数在8位及以上,则进行强度检测:
若密码字符属于同一类字符,则密码强度为“弱”;
若密码字符属于不同的二类字符,则密码强度为“中等”;
若密码字符属于不同的三类字符,则密码强度为“强”。
(1)若输入“12abcd5!
”,则输出结果为_________(选填,选字母:
A.密码位数不能少于8位,请重新输入!
/B.弱/C.中等/D.强)
(2)实现上述功能的程序如下,请在划线处填入合适的代码。
password=input(“请输入要检测的密码:
”)
①_______________
ifn<
8:
print(“密码位数不能少于8位,请重新输入!
n1=0
n2=0
n3=0
foriinrange(0,n,1):
②_______
if“0”<
=ch<
=“9”:
n1=1
elif“a”<
=“z”or“A”<
=“Z”:
n2=1
else:
n3=1
③_____
ifx==3:
print(“强”)
elifx==2:
print(“中等”)
print(“弱”)
17.完善程序实现以下功能并保存。
输入一元二次方程的系数a,b,c的值,求解一元二次方程ax2+bx+c=0(a≠0)
#请不要更改源程序的结构,删除原题里的①、②。
填写正确的代码,使程序完善
importmath
a=float(input("
请输入方程系数a(!
=0):
"
))
b=float(input("
请输入方程系数b:
c=float(input("
请输入方程系数c:
delta=b*b-4*a*c
ifdelta>
________:
x1=(-b+math.sqrt(delta))/(2*a)
x2=(-b-math.sqrt(delta))/(2*a)
print("
方程有两个不同的解"
,x1,x2)
elifdelta==0:
x1=________
方程有两个相同的解"
,x1)
else:
方程无解"
)
input("
运行完毕,请按回车键退出..."
18.程序设计:
唐三藏又被妖怪抓走了,这次孙悟空还是没打得过妖怪,于是来求观音菩萨。
观音菩萨告诉孙悟空,在天庭里身高正好为1000米的那位神仙可以降伏此妖。
于是悟空立刻来到天上,在玉皇大帝的神仙册上看到了按身高从矮到高排列有10000个神仙。
由于时间紧迫,悟空想用最短的时间找到这位神仙,这样才可以尽快解救唐僧。
代码如下:
List=list(map(int,input(“请按身高递增顺序依次输入10000个神仙的身高”).split()))
left=1
right=10000
while①
mid=②
ifList[mid]==1000:
③
elifList[mid]<1000:
④
⑤
print(“能帮孙悟空的神仙在第{0}位上”.format(mid+l))
(1)程序代码中①处正确的代码是(_______)。
A.left<rightB.left<=rightC.left!
=rightD.left>right
(2)程序代码中②处正确的代码是(_______)。
A.(left+right)/2B.(left+right)\2
C.(left+right)//2D.(left+right)\\2
(3)程序代码中③处正确的代码是(_______)。
A.passB.print(mid)zC.breakD.continue
(4)程序代码中④处正确的代码是(_______)。
-
A.left=midB.right=midC.left=mid+1D.right=mid-1
(5)程序代码中⑤处正确的代码是(_______)。
19.程序分析题
学校举行校园歌手大赛,评委由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:
min=a[i]
aver=()/4
(1)在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由______控件生成的。
A.EntryB.LabelC.FrameD.Button
(2)题目中算法描述采用的是__________A、自然语言B、伪代码C、流程图D、.N-S图
(3)下列程序代码片段对应于算法描述中的第2步至第4步。
请填写片段中空白处的表达式填写完整________
20.阅读程序。
分析下列切片相关程序并回答问题。
list2=[5,6,7,8,9]
print(list2[:
])
print(list2[2:
2])
print(list2[1:
3])
4])
(1)程序第一个print的输出结果是______________。
(2)程序第二个print的输出结果是______________。
(3)程序第三个print的输出结果是______________。
(4)程序第四个print的输出结果是______________。
(5)程序第五个print的输出结果是______________。
21.程序补充:
(1)有5万元资金存入银行,选择“1年定期.自动转存”的存款方式,由于银行利率是不断变化的,这5年利率分别是3.25%.3%.3%.2%.1.75%,5年后会有多少收益呢?
调用round()函数,保留结果两位小数。
money=_______________________________
rate=_________________________________
for___________________________________
____________________________________
print(“5年以后存款总额:
”,money,“元”)
(2)某投资者购买了10万元一年期收益率3.7%的银行保证收益型理财产品。
每年理财赎回后,他会提取2万元用作生活所需,余下资金仍购买此种理财。
在收益率不变的情况下,多少年后本金被全部取出?
money=________________________________
year=__________________________________
while_________________________________
_________________________________
________________________________
print(year,“年后资金被全部取出”)
【参考答案】***试卷处理标记,请不要删除
1.D
【详解】
本题主要考查Python变量。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字;
变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类
解析:
D
变量能存储的数据很多,包含存储汉字,在Python中,定义变量是不需要指定数据类型的,但Python本身是有数据类型的,它的数据类型可分为数字型和非数字型;
数据类型是可以强制转换的;
变量被第二次赋值后,会覆盖原有的数据,故本题选D选项。
2.B
本题主要考查Python输入函数。
在Python中,input()函数的返回结果的数据类型为字符串String型,故本题选B选项。
B
3.D
本题主要考查Python数据类型。
整数(int)、浮点数(float)、字符串(str)、布尔(bool),2.5+2.5=5.0,值是浮点数(float)类型,故本题选D选项。
4.C
本题考查的是Python代码程序。
本题的关键点是range()函数,其取到的区间数值为前闭后开,所以为1-99的整数。
循环过程就是执行1-99所有整数的求和过程。
故答案为C。
C
5.D
本题考查的是python表达式的书写。
表达式的书写要在一行中,并且乘号不能省略,并且用括号表示其计算的优先级。
电阻表达式转换后,选项D正确。
电阻表达式
转换后,选项D正确。
6.A
本题考查的是数据的定义。
数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。
“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。
故本题应选A。
A
7.A
本题考查的是信息相关知识。
信息是一种具体的含义,语言是信息的载体,故选项A错误;
给微信朋友圈点赞是个人推荐,故选项B正确;
表达信息时要遵照一定的标准,计算机、通信、网络等规范了一系列的
表达信息时要遵照一定的标准,计算机、通信、网络等规范了一系列的协议,故选项C正确;
对相关数据进行加工处理,使数据之间建立相互联系,从而形成信息,选项D正确。
8.D
本题主要考查Python程序的调试。
检测是否满足关系(ab+cd)(ab+cd)=a,需要将ab与cd取出来,ab=abcd//100,cd=abcd%100,故第一空填x=k/
检测是否满足关系(ab+cd)(ab+cd)=a,需要将ab与cd取出来,ab=abcd//100,cd=abcd%100,故第一空填x=k//100,第二空判断是否满足(ab+cd)(ab+cd)=a,故第二空填(x+y)**2==k,故本题选D选项。
9.C
本题主要考查Python表达式的运算。
“ab”、“c”是字符型数据类型,“c”*2=“cc”,故"
*2的运行结果是abcc,故本题选C选项。
10.A
Python没有char类型,一个字符也是字符串,故本题选A选项。
11.A
本题主要考查Python程序的执行。
x=3,不满足x>
3,执行y=3*x+1=10,故本题选A选项。
12.A
input()函数是通过键盘输入,将其以字符类型返回,故S=“6”,输出S*3=“666”,故运算结果是666,故本题选A选项。
13.C
本题考查WORD相关知识。
该文档中的有1个用户a添加了2处批注,A错。
该文档中图片采用的环绕方式为四周或者紧密,但不是上下型,B错。
若要对文档中所有的Python文字设置为红色倾斜格式
若要对文档中所有的Python文字设置为红色倾斜格式,则用替换功能。
选项C的说法正确。
14.A
Python中的变量不需要声明,变量的赋值操作即是变量声明和定义的过程。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
每个变量在使用前都必须赋值。
变量赋值以后变量才会被创
变量赋值以后变量才会被创建。
因此A选项正确。
15.A
本题考查的是Python循环语句。
range(10)是[0,10)的整数。
故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。
16.Dn=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。
17.-b/(2*a)
本题主要考查Python程序执行与调试。
①delta大于0,方程有两个不同的解,delta等于0,方程有两个相同的解,delta小于0,方程无解,故第一空填0。
②delta=0,则方程有两个相同的根,x=-b/(2*a),故第二空填-b/(2*a)。
18.BCCCD
本题主要考查二分查找算法及Python程序实现。
①二分查找的循环条件是left<=right,故选B选项。
②此处是取中间值,需要整除2,故填(left+right)//2
,故选C选项。
③如果mid对应的列表值是1000,表示已找到,则用break跳出循环,选C选项。
④如果mid对应的列表值小于1000,则需要更新left的值为mid+1继续循环,选C选项。
⑤否则更新right的值为mid-1,选D选项。
19.AAs-max-min
①在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由Entry控件生成的(Entry是Tkinter用来接收字符串等输入的控件,该控件允许用户输入一行文字),故选A选项。
②题目中算法描述采用的是伪代码,故选A选项。
③从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分,故此处填s-max-min。
20.[5,6,7,8,9][7,8,9][5,6][6,7][7,8]
本题主要考查Python列表截取。
Python列表的正向索引下标是从零开始,不是1;
当只有冒号,表示全部元素;
只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后);
只有冒号尾下标i(代表的是从开始一直截取到i-1的元素);
头下标i,冒号和尾下标j都有(代表的是从i一直截取到j-1的元素),因此①[5,6,7,8,9]②[7,8,9]③[5,6]④[6,7]⑤[7,8]。
【点睛】
21.[0.0325,0.03,0.03,0.02,0.0175]iinrate:
(没有冒号算错误)money=round(money*(1+i),2)1000000money>
0或money>
=0money=round(money*1.037-20000,2)year=year+1
本题主要考查Python程序语句。
①此处是变量money的初始化,有5万元资金存入银行,故填50000。
②5年利率分别是3.25%、3%、3%、2%、1.75%,用rate数组保存,故填[0.0325,0.03,0.03,0.02,0.0175]。
③通过for循环,从rate数组中取值,故填iinrate:
(没有冒号算错误)。
④调用round()函数,保留结果两位小数,故填money=round(money*(1+i),2)。
⑤购买了10万元一年期收益率3.7%的银行保证收益型理财产品,故money的初始值为100000,故填100000。
⑥year的初始值也为0,故填0。
⑦循环条件是money大于0或大于等于0,故填money>
=0。
⑧收益率3.7%,每年理财赎回后,会提取2万元用作生活所需,余下资金仍购买此种理财,使用round函数保留2位小数,故填money=round(mon