python软件编程等级考试二级编程实操题03Word下载.docx
《python软件编程等级考试二级编程实操题03Word下载.docx》由会员分享,可在线阅读,更多相关《python软件编程等级考试二级编程实操题03Word下载.docx(12页珍藏版)》请在冰豆网上搜索。
b=4
a=a*b
print(a)
A.3B.4C.12D.a*b
7.下列不可以作为Python合法变量名的是()
A.c0B.2aC.a_3D.小河
8.下列选项中,能作为python程序变量名的是()
A.s%1B.3stuC.whileD.dist
9.python用来表示代码块所属关系(控制层级结构的)的语法符号是()
A.圆括号B.大括号C.缩进D.冒号
10.在Python中,表示跳出循环的函数是()
A.continueB.breakC.ESCD.Close
11.有python程序如下:
S=input()
print(S*3)
运行后通过键盘输入6,则运算结果是()
A.666B.SSSC.18D.S*3
12.在python中,运行以下程序,结果应为()
a=5
b=7
b+=3
a=b*20
a+=2
a=a%b
print(a,b)
A.57B.2010C.227D.210
13.根据Python中变量命名遵循的规则,正确的是()
A.char21B.2020PyC.PythonD.name.ch
14.在python语言中表示“x属于区间[a,b)”的正确表达式是()
A.a≤xorx<
bB.a<
=xandx<
bC.a≤xandx<
bD.a<
=xorx<
b
15.()不是程序设计高级语言。
A.Python
B.Basic
C.C++
D.伪代码
二、程序填空
16.完善程序实现如下功能并保存:
有5个人坐在一起,第5个人说他比第4个人小3岁;
第4个人说他比第3个人小3岁;
第3个人说他比第2个人小3岁;
第2个人又说他比第1个人小3岁;
第1个人说他是38岁。
编写程序,计算出第5个人的年龄并显示。
defage(n):
ifn==1:
c=________
else:
c=age(n-1)-3
return________
print("
第5人的年龄:
"
,age(________))
input("
运行完毕,请按回车键退出..."
17.程序设计:
键盘输入任意的正整数,程序输出与其相应的二进制数。
代码如下:
n=int(input("
请输入一个十进制数:
))
result=[]
whilen>
0:
result.append(①)
n=②
result.reverse()
foriinresult:
print(i,end=”)
(1)程序代码中①处正确的代码是(_______)。
A.n%2B.n/2C.n//2D.n*2
(2)程序代码中②处可能的代码是(_______)。
18.操作说明:
编写一个程序实现以下功能,将程序以“Y:
/3/3.py”作为文件名保存。
题目:
设计100以内的数中能同时被3或5整除的个数。
19.求100以内素数。
20.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:
能被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]
__________
tall_day+=sun
print(day+"
是当年的第"
+str(tall_day)+"
天"
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
21.分析完善程序
某市出租车收费标准如下:
(1)3公里内(含3公里),收费8元
(2)超过3公里但未超过6公里部分,按1.5元/公里收费
(3)超过6公里部分,按2.25元/公里收费。
根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?
[算法分析]
假设总费用为p,则可以分段计算
p=8‘(s≤3)
p=1.5*(s-3)+8‘(3<
s≤6)
p=2.25*(s-6)+1.5*3+8‘(s>
6)
[参考代码]
a=float(input(“s=”))
ifs<
=3:
p=8
if
p=1.5*(s-3)+8
ifs>
6:
p=2.25*(s-6)+1.5*3+8
print(p)
根据上述回答如下问题:
(1)本题采用的算法是________(填:
解析法/枚举法/排序法/递归法)。
(2)程序代码中空白处应填写的条件是_______(填:
A/B/C/D)。
A.3<
s<
=6B.3<
=s<
=6C.s>
3ands<
6D.s>
3Ors<
=6
【参考答案】***试卷处理标记,请不要删除
1.D
【详解】
本题主要考查Python程序的执行。
列表的索引是从0开始的,故List[3]=9,故段运行后的输出结果是9,故本题选D选项。
解析:
D
2.D
本题主要考查Python赋值语句。
“5s”不是一个合法的变量名,不能将变量x赋给一个数值或表达式,可以将s+5赋给变量s,故本题选D选项。
3.B
本题主要考查Python绘图函数。
plot是绘图函数,scatter是绘制散点图函数,bar是绘制柱状图函数,boxplot是绘制箱线图函数,故本题选B选项。
B
4.B
本题主要考查Python的变量。
变量需要先创建和初始化,才可以使用,故本题选B选项。
5.A
29%3=2,满足if条件,输出结果为29不能被3整除,故本题选A选项。
A
6.C
a=3,b=4,a=a*b=3*4=12,故运行的结果是12,故本题选C选项。
C
7.B
本题主要考查Python变量的命名。
变量的命名规则有:
不能以数字开头,可以以字母或下划线开头,不能包含特殊字符,不能是关键词,故2a不可以作为Python合法变量名,故本题选B选项。
8.D
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故dist能作为python程序变量名,故本题选D选项。
9.C
本题主要考查Python语法。
python用来表示代码块所属关系(控制层级结构的)的语法符号是缩进,故本题选C选项。
10.B
本题主要考查Python函数知识点。
continue是跳出本次循环,进入下一次循环,break是跳出循环,故本题选B选项。
11.A
input()函数是通过键盘输入,将其以字符类型返回,故S=“6”,输出S*3=“666”,故运算结果是666,故本题选A选项。
12.D
本题考查Python程序的运算。
a=5,b=7,b+=3=10,a=b*20=200,a+=2=202,a=a%b=2。
最后a=2,b=10,故本题选D。
13.A
本题考查的是Python变量名的命名规则。
Python中变量命名规则:
由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。
故本题应选A。
14.B
本题主要考查Python表达式。
在python语言中表示“x属于区间[a,b)”的正确表达式是a<
b,故本题选B选项。
15.D
本题考查程序设计语言的相关知识点
程序设计高级语言包括Python、Basic、C++等,伪代码不能执行,不是程序设计高级语言。
故本题选D选项
16.c5
本题主要考查Python程序执行与调试。
①第一个人38岁,n标记第几个人,变量c保存年龄,当n=1时,c=38,故第一空填38。
②后面的人都比前一个人小3岁,故当n不等于1时,调用递归函数age,c=age(n-1)-3,最后返回第n个人的年龄c,第二空填c。
③此处是返回第5个人的年龄,即age(5),填5。
17.AC
本题主要考查Python程序设计。
①此处将n取余2,用append函数将值追加到列表result中,故此处填n%2,选A选项。
②当n大于0时,n整除2继续循环,循环结束使用reverse函数,将result列表中的元素逆转,故此处填n//2,选C选项。
18.c=0
能同时被3或5整除的数是:
end="
"
foriinrange(1,101):
ifi%3==0andi%5==0:
c+=1
print(i,end="
能同时被3或5整除的个数是:
+str(c))
设计100以内的数中能同时被3或5整除的个数,使用for循环变量i的范围是从1~99,用变量c统计能同时被3或5整除的个数,如果满足if判断条件,则变量c递增,循环完输出c的值,具体代码及运行结果如下:
19.foriinrange(1,100):
ifi>
1:
forjinrange(2,i):
if(i%j)==0:
break
print(i)
可以通过for循环找出100以内的素数,用i依次整数2~i-1,如果能整除表明i不是素数,否则i为质数,具体代码如下:
foriinrange(1,100):
20.int(day[5:
7])(year%4==0andyear%100!
=0oryear%400==0)andmonth>
=2tall_day+=1110
本题主要考查Python程序的执行与调试。
①此处是取出字符串day中的月份赋给变量month,month是第5~第6位,str[start:
end],start会包含在结果中而end却不会,故此处填int(day[5:
7])。
②此处判断是不是闰年,因为闰年的二月有29天,故if判断还要判断当前的月份是不是包含2月即大于等于2月,故此处填(year%4==0andyear%100!
=2。
③如果是闰年且当前日期包括2月,则循环完tall_day需增加1天,故填tall_day+=1。
④输入“2020-4-19”为当年的第110天。
21.解析法或解析A
①由算法分析可知,本题采用的算法是解析法或解析。
②3公里内(含3公里),收费8元;
超过3公里但未超过6公里部分,按1.5元/公里收费;
超过6公里部分,按2.25元/公里收费,故此处填3<
=6,故选A选项。