编程python软件编程等级考试一级编程实操题03.docx
《编程python软件编程等级考试一级编程实操题03.docx》由会员分享,可在线阅读,更多相关《编程python软件编程等级考试一级编程实操题03.docx(17页珍藏版)》请在冰豆网上搜索。
编程python软件编程等级考试一级编程实操题03
【编程】python软件编程等级考试(一级)编程实操题03
一、选择题
1.下列哪条赋值语句在Python中是非法的:
()
A.X=Y=Z=1B.X=(Y=Z+1)C.X,Y=Y,XD.X+=Y
2.在Python中,设a=2,b=3,表达式a=3值是()
A.1B.0C.TrueD.False
3.有如下python程序段:
a=[4,5,3,6,7,8,2,9,1]
m,c=1,1
foriinrange(1,len(a)):
ifa[i]>=a[i-1]:
c+=1
m=max(m,c)
else:
c=1
print(c,m)
则程序执行后,c和m的值分别是()
A.1和1B.1和4C.2和4D.3和4
4.有如下VB程序段:
s1="python":
s2="visual"
i=1:
j=1:
s=""
DoWhilei<=Len(s1)Andj<=Len(s2)
IfMid(s1,i,1)>=Mid(s2,j,1)Then
s=s+Mid(s1,i,1)
Else
j=j+1
EndIf
i=i+1
Loop
执行该程序后,j的值是()
A.2B.3C.5D.7
5.以下Python代码输出结果中说法正确的是()。
x=0
foriinrange(1,100):
x=x+i
print(x)
A.1+100的和B.1+99的和
C.1~99所有整数的和D.1~100所有整数的和
6.现有如下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
7.检测输入的四位整数abcd是否满足下述关系:
(ab+cd)(ab+cd)=abcd。
实现上述功能的python程序代码如下:
k=int(input(“输入一个四位数:
”))
①
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
8.有如下python程序段:
a="Doingisbetterthansaying."
print(r"\n"+a[:
15])
该程序运行后,输出的结果是()
A.直接输出:
'\nDoingisbetter'
B.直接输出:
\nDoingisbetterth
C.直接输出:
\nDoingisbetter
D.先换行,然后在新的一行中输出:
Doingisbetter
9.Python语句"ab"+"c"*2的运行结果是()
A.abc2B.abcabcC.abccD.ababcc
10.计算机能够直接识别和执行的语言是()
A.机器语言
B.汇编语言
C.Python语言
D.C语言
11.以下Python中变量的命名正确的是()
A.1a=4
B.print=5
C._A=2
D.a+b=3
12.下列定义变量的python程序语句变量赋值错误的是()
A.x=y=1B.x,y=1,2C.x==1D.x=1,2
13.下列Python程序运行后的输出结果是()。
s=0
foriinrange(1,10):
s=s+i
print("s=",s)
A.s=35B.s=45C.s=55D.s=65
14.根据Python中变量命名遵循的规则,正确的是()
A.char21B.2020PyC.PythonD.name.ch
15.Python语言属于()
A.自然语言B.汇编语言C.机器语言D.高级语言
二、程序填空
16.阅读程序。
分析以下两段Python程序并回答问题。
#程序1
i=1
whilei<101:
print('把这句话打印100遍')
i+=1
#程序2
i=100
whilei:
print('把这句话打印100遍')
i=i-2
(1)在程序1中,i+=1这句话的含义是______________。
(2)在程序1中,‘把这句话打印100遍’实际输出了_____遍。
(3)在程序2中,i的初值是___。
(4)在程序2中,‘把这句话打印100遍’实际输出了_____遍。
(5)在程序2中,whilei的含义是_________。
17.学校开展“奇妙的数字”研究性学习活动。
张轩小组4人决定把课题定为《探秘水仙花数》。
(1)张轩使用XX搜索引擎搜索到“水仙花数”是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:
153=13+53+33,那么这个数就是一个“水仙花数”。
XX属于____搜索引擎(全文,分类)
(2)为了求解100--999这些数字中,哪些数字是“水仙花数”?
张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图:
k是可以重新赋值的,k是变量还是常量?
____程序中①处有空缺,请补充完整①处的代码。
____程序中逐一验证了100到999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做______(解析法,枚举法,递归法,二分法)。
(3)在研究成果展示环节,张轩小组可以使用什么软件制作《探秘水仙花数》的研究成果报告?
(_____)
18.程序设计:
键盘输入任意的正整数,程序输出与其相应的二进制数。
代码如下:
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)程序代码中②处可能的代码是(_______)。
A.n%2B.n/2C.n//2D.n*2
19.约瑟夫问题是个有名的问题:
N个人围成一圈,顺序为0,1,2,3,4,5,从0号这个人开始报数,报到2的将被杀掉,接下去重新开始报数,报到3的将被杀掉...以此类推,最后剩下一个,其余人都将被杀掉。
例如N=6,被杀掉的顺序是:
1,4,3,0,5;最后只剩下2这个人。
llist=
n=int(input(“请输入参与人数:
”))
foriinrange(0,n-1):
llist.append([i,i+1])
___________
___________
long=n
k=head
i=1
p=2
while(____):
ifi==p-1:
t=llist[k][1]
print(llist[t][0])#索引为t的删除
__________________
ift==head:
___________________
i=1
p+=1
long=long-1
k=llist[k][1]
______________
i+=1
print(llist[head][0])
20.调试程序。
请阅读以下程序并写出运行结果。
#ex16.py
i=0
sum=0
whilei<10:
ifi%3==0:
sum+=i
print(i)
i=i+1
print('sum',sum)
_________
21.请在空格处填写正确的代码,使程序完善。
实现功能:
绘制y=x2-2x+1的图像
#加载numpy模块并限简洁的别名为np
importnumpyasnp
#加载matplotlib.pyplot模块并限简洁的别名为plt
importmatplotlib.pyplotasplt
#x在-7到9之间,每隔0.1取一个点
x=np.arange(-7,9,0.1)
_____=x**2-2*x+1
plt.plot(x,________)
plt.title('y=x*x-2*x+1')
plt.xlabel('x')
plt.ylabel('y')
plt._________
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.B
【详解】
本题考查Python语句。
选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语
解析:
B
【详解】
本题考查Python语句。
选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语句,这是非法的;选项C,X,Y=Y,X这是交换语句,合法;选项D,X+=Y相当于X=X+Y,故本题选B。
2.C
【详解】
本题主要考查Python基本运算。
Python比较运算优先级高于逻辑运算,因此C选项正确。
【点睛】
解析:
C
【详解】
本题主要考查Python基本运算。
Python比较运算优先级高于逻辑运算,因此C选项正确。
【点睛】
3.B
【详解】
本题主要考查Python程序的执行。
m=1,c=1,当i=1时,5>4,c+=1=2,m=max(m,c)=2;当i=2时,3<5,c=1;当i=3时,6>3,c+=1=2,m=ma
解析:
B
【详解】
本题主要考查Python程序的执行。
m=1,c=1,当i=1时,5>4,c+=1=2,m=max(m,c)=2;当i=2时,3<5,c=1;当i=3时,6>3,c+=1=2,m=max(m,c)=2;当i=4时,7>6,c+=1=3,m=max(m,c)=3;当i=5,8>7,c+=1=4,m=max(m,c)=4;当i=6时,2<8,c=1;当i=7时,9>2,c+=1=2,m=max(m,c)=4;当i=8时,1<9,c=1,循环结束,c和m的值分别是1和4,故本题选B选项。
4.C
【详解】
本题主要考查VB程序的执行。
分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2的每一个字符,若s1中的字符大于或等于s2中的字符,则将s1中对应的字
解析:
C
【详解】
本题主要考查VB程序的执行。
分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2的每一个字符,若s1中的字符大于或等于s2中的字符,则将s1中对应的字符拼接到变量s中,否则变量j递增。
第一遍循环,i=1,j=1,“p”<“v”,j=j+1=2,i=i+1=2;第二遍循环,“y”>“i”,i=i+1=3;第三遍循环,“t”>“i”,i=i+1=4;第四遍循环,“h”<“i”,j=j+1=3,i=i+1=5;第五遍循环,“o”<“s”,j=j+1=4,i=i+1=6;第六遍循环,“n”<“u”,j=j+1=5,i=i+1=7,循环结束,故执行该程序后,j的值是5,故本题选C选项。
5.C
【详解】
本题考查的是Python代码程序。
本题的关键点是range()函数,其取到的区间数值为前闭后开,所以为1-99的整数。
循环过程就是执行1-99所有整数的求和过程。
故答案为C。
解析:
C
【详解】
本题考查的是Python代码程序。
本题的关键点是range()函数,其取到的区间数值为前闭后开,所以为1-99的整数。
循环过程就是执行1-99所有整数的求和过程。
故答案为C。
6.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选项。
7.D
【详解】
本题主要考查Python程序的调试。
检测是否满足关系(ab+cd)(ab+cd)=a,需要将ab与cd取出来,ab=abcd//100,cd=abcd%100,故第一空填x=k/
解析:
D
【详解】
本题主要考查Python程序的调试。
检测是否满足关系(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选项。
8.C
【详解】
本题主要考查Python程序运行。
r标识\后面的字符不转义,a[:
15]表示从a的右边往左第15位到最左边全部输出,故该程序运行后,输出的结果是直接输出:
\nDoingis
解析:
C
【详解】
本题主要考查Python程序运行。
r标识\后面的字符不转义,a[:
15]表示从a的右边往左第15位到最左边全部输出,故该程序运行后,输出的结果是直接输出:
\nDoingisbetter,故本题选C选项。
9.C
【详解】
本题主要考查Python表达式的运算。
“ab”、“c”是字符型数据类型,“c”*2=“cc”,故"ab"+"c"*2的运行结果是abcc,故本题选C选项。
解析:
C
【详解】
本题主要考查Python表达式的运算。
“ab”、“c”是字符型数据类型,“c”*2=“cc”,故"ab"+"c"*2的运行结果是abcc,故本题选C选项。
10.A
【详解】
本题主要考查程序设计语言。
计算机能够直接识别和执行的语言是机器语言,即0和1,故本题选A选项。
解析:
A
【详解】
本题主要考查程序设计语言。
计算机能够直接识别和执行的语言是机器语言,即0和1,故本题选A选项。
11.C
【详解】
本题考查Python变量命名规则
变量命名不能以数字开头,不能使用关键字,不能使用特殊符号。
故本题选C选项
解析:
C
【详解】
本题考查Python变量命名规则
变量命名不能以数字开头,不能使用关键字,不能使用特殊符号。
故本题选C选项
12.C
【详解】
本题主要考查Python赋值语句。
x==1是条件判断语句(判断x是否等于1);选项A结果是x=1,y=1;选项B结果是x=1,y=2;选项D结果是x=(1,2),故本题选C选项。
解析:
C
【详解】
本题主要考查Python赋值语句。
x==1是条件判断语句(判断x是否等于1);选项A结果是x=1,y=1;选项B结果是x=1,y=2;选项D结果是x=(1,2),故本题选C选项。
13.B
【详解】
本题主要考查Python程序的执行。
s=0,变量i的范围是1~9,循环体是s=s+i,程序运行后s=s+i=0+1+2+3+4+5+6+7+8+9=45,故本题选B选项。
解析:
B
【详解】
本题主要考查Python程序的执行。
s=0,变量i的范围是1~9,循环体是s=s+i,程序运行后s=s+i=0+1+2+3+4+5+6+7+8+9=45,故本题选B选项。
14.A
【详解】
本题考查的是Python变量名的命名规则。
Python中变量命名规则:
由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。
故本题应选A。
解析:
A
【详解】
本题考查的是Python变量名的命名规则。
Python中变量命名规则:
由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。
故本题应选A。
15.D
【详解】
本题主要考查Python语言。
Python、VB、Java等语言属于高级语言,故本题选D选项。
解析:
D
【详解】
本题主要考查Python语言。
Python、VB、Java等语言属于高级语言,故本题选D选项。
二、程序填空
16.i=i+1无数遍100无数遍i!
=0或i>0或其他等价答案
【详解】
本题主要考查Python程序的执行与调试。
①在程序1中,i+=1这句话的含义是i=i+1(即i递增1)。
②i的初值为1,while循环条件i<101为真,会一直执行循环体,无法跳出循环体执行i+=1,故‘把这句话打印100遍’实际输出了无数遍。
③在程序2中,i的初值是100。
④i=100,whilei(即while100)一直为真,会一直执行循环体,无法跳出循环体执行i=i-2,故‘把这句话打印100遍’实际输出了无数遍。
⑤在程序2中,whilei的含义是i!
=0或i>0或其他等价答案
17.全文变量k+1枚举法Word/WPS/PowerPoint等
【详解】
本题主要考查Python程序的执行与调试。
①XX属于全文搜索引擎,也是关键词搜索。
②变量可以反复赋值,故k是变量。
③循环体执行完,k递增,继续找水仙花数,故此处填k+1。
④逐一验证了100到999之间所有的三位数是否符合,这种算法叫做枚举法。
⑤在研究成果展示环节,张轩小组可以使用Word/WPS/PowerPoint等软件制作《探秘水仙花数》的研究成果报告。
18.AC
【详解】
本题主要考查Python程序设计。
①此处将n取余2,用append函数将值追加到列表result中,故此处填n%2,选A选项。
②当n大于0时,n整除2继续循环,循环结束使用reverse函数,将result列表中的元素逆转,故此处填n//2,选C选项。
19.llist.append([n-1,0])head=0long>1head=llist[k][1]llist[k][1]=llist[t][1]k=llist[k][1]
【详解】
本题主要考查Python程序执行与调试。
①for循环体是将索引0-n追加到llist中,此处是循环体执行完,将末元素与首元素的索引加入到llist中,故填llist.append([n-1,0])。
②head是列表头,初始化为0,故填head=0。
③最后剩下一个,其余人都将被杀掉,故循环条件是long>1,变量long控制元素个数,故填long>1。
④索引为t的删除后,此处是更新head值,故填head=llist[k][1]。
⑤删完后,如果t等于head,需要更新索引k,将索引t的值赋给变量k,故填llist[k][1]=llist[t][1]。
⑥如果t不等于head,也需要更新索引k,故填k=llist[k][1]
20.0
【详解】
本题主要考查Python中While循环结构。
Python编程中while语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。
题中循环体内含If选择结构,即当i%3为0时,执行sum变量累加i,输出i,i自增加1操作,因此本题输出0后,循环无限执行下去。
【点睛】
21.yyshow()
【详解】
本题主要考查Python程序绘制图像。
①绘制y=x2-2x+1的图像,故此处填y。
②根据横纵坐标x和y绘制图,故此处填y。
③此处调用显示函数show(),故填show()。