python试题答案精品练习Word文档格式.docx
《python试题答案精品练习Word文档格式.docx》由会员分享,可在线阅读,更多相关《python试题答案精品练习Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
print(c)
A.a-bB.a+bC.a/bD.a%b
16.已知字符串a="
,则a[1:
3]的值为()
pyth"
B."
pyt"
C."
py"
D."
yt"
17.在数学中,我们一般使用“=“表示相等关系,那么“=”在Python语言中的写法为()
A.=B.==C.:
=D.<
>
18.下列序列拼接错误的是()
A.list=[None]*4
B.msg=“Python”,”语言”
C.tup=“/”.join((“123”,”234”))
D.set={1,2,3}+{4,5,6}
19.在PythonIDLE编辑器中书写正确的表达式()
A.b**2-4acB.1/2gt2C.pi*r^2D.2*pi*r
20.下列Python程序段
a=0
b=4
ifb>
a:
a=3*b
else:
a=10
程序运行后,a的值是()
A.10B.0C.12D.4
21.检测输入的四位整数abcd是否满足下述关系:
(ab+cd)(ab+cd)=abcd。
实现上述功能的python程序代码如下:
k=int(input(“输入一个四位数:
”))
①
y=k%100
if②:
print(“符合”)
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
22.小明想要通过编程来解决由昆明到景东锦屏耗时最短行程问题时,最核心的工作是()
A.设计出解决问题的算法B.设计出解决问题的PPT
C.编写出Python代码D.选择一种编程软件
23.下面选项中对Python操作描述错误的是()
A.x1+x2连接列表x1和x2,生成新列表
B.x*n将列表x复制次,生成新列表
C.Min(x)列表x中最大数据项
D.Len(x)计算列表中成员的个数
24.下列与数学表达式
对应的python表达式,正确的是(
)。
A.(-b+math.sqrt(b*b–4*a*c))/a*a
B.-b+math.sqrt(b*b–4*a*c)/2*a
C.(-b+math.sqrt(b*2–4*a*c))/(2*a)
D.(-b+math.sqrt(b*b–4*a*c))/(2*a)
25.在Python中,表达式a**3+b**3+c**3==100*a+10*b+c属于()
A.算术表达式B.关系表达式C.逻辑表达式D.日期表达式
26.关于下列Python程序段的说法正确的是()
k=1
while1:
k+=1
A.存在语法错误,不能执行B.执行1次C.执行无限次D.执行k次
27.以下是猜数游戏的Python程序,请你补全代码:
请选择适当的代码填入程序①处。
A.forB.printC.elifD.input
28.下列Python程序段运行的结果是()
x=0
foriinrange(1,20,3):
x=x+i
print(x)
A.80B.190C.70D.210
29.在Python程序中,已知x=2,y=1,当执行语句y+=x*2,y的值是()
A.3B.4C.5D.6
30.下列不被python所支持的数据类型是()
A.charB.floatC.intD.list
二、程序填空
31.若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。
编写python程序,实现如下功能:
输入n的值,统计显示n以内的所有双胞胎数。
程序运行界面如图所示:
实现上述功能的程序如下,请在划线处填入合适的代码。
importmath
defisprime(x):
______
foriinrange(2,int(math.sqrt(x))+1):
ifx%i==0:
f=False
returnf
n=int(input("
请输入一个正整数n:
"
))
c=0
k=3
whilek<
=n-2:
ifisprime(k)and______________:
c+=1
print("
第"
+str(c)+"
对双胞胎数:
k,'
和'
k+2)
_______
print("
共有"
+str(c)+"
对双胞胎数"
)
划线处①处应该填入的语句为:
;
划线处②处应该填入的语句为:
划线处③处应该填入的语句为:
。
32.现今信息化时代,信息的传输十分迅速,足不出户便知天下事。
许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。
但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。
小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜进行合并,形成自己的热点排行榜。
为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。
现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。
于是他决定把这个小功能交给他的好朋友——你来实现,你想到2种算法,请把下列程序填写完整。
A
P10
P9
P8
P7
P6
P5
P4
P3
P2
P1
11
66
116
329
438
582
652
714
756
925
B
E10
E9
E8
E7
E6
E5
E4
E3
E2
E1
35
215
271
309
428
576
772
806
950
Python程序如下:
A=[11,66,116,329,438,582,652,714,756,925]
B=[35,116,215,271,(5)__,428,576,772,806,950]
算法一:
myRank=
i=0
j=0
while(i<
len(A)andj<
len(B)):
if(A[i]<
B[j]):
(6)______
i+=1
else:
myRank.append(B[j])
j+=1
len(A)):
myRank.append(A[i])
else:
while((7)______):
print(myRank)
算法二:
myRank=[0]*(len(A)+len(B))
k=0
while((8)_____):
k=i+j
if(i>
=len(A)):
myRank[k]=B[j]
elif(j>
=len(B)):
myRank[k]=A[i]
elif((9)_____):
33.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。
为求解规模为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
return_________
s=0
请输入n:
foriin_______:
s=________
print(s)
34.编写程序,实现从键盘输入数据,数据前三位的ASCII值加2,从第四位开始ASCII值加3。
35.编写程序,找到并输出100以内的偶数个数。
36.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:
能被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”为当年的第_____天。
37.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
**
***
****
38.完善程序。
以下是计算S=1+6+11+…+101的程序代码。
请你在
处填写正确的语句。
while(k<
=101)
__
101):
k=k+5
s=s+k
print(s+1)
39.冠军在A、B、C、D四位同学中。
A说:
“不是我”,B说:
“是C”,C说:
“是D”,D说:
“C说的不对”,已知四人中有一人说了假话。
判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['
A'
'
B'
C'
D'
]#设置选手列表
foriin__________:
#循环读取选手编号
cond=(i!
='
)+(i=='
)+(i=='
)+(i!
)#查找符合条件的选手
ifcond==_____:
#说真话是否是3人
冠军是:
_________)#输出冠军
input("
运行完毕,请按回车键退出..."
40.请在空格处填写正确的代码,使程序完善。
实现功能:
用辗转相除法求解两个正整数的最大公约数。
x=int(input('
请输入第一个正整数:
'
y=int(input('
请输入第二个正整数:
m=max(x,y)#找出x,y中的最大值
n=min(x,y)#找出x,y中的最小值
r=m%n#求得最大值除以最小值后的余数
whiler!
=0:
#如果余数不等0,则进行以下循环
m=________#把最小值赋给m
n=_________#把余数赋给n
r=m%n#求得最大值除以最小值后的余数
print('
这两个数的最大公约数为:
______)
运行完毕,请按任意键退出...."
【参考答案】***试卷处理标记,请不要删除
1.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故dist能作为python程序变量名,故本题选D选项。
解析:
D
2.A
本题考查的是Python循环语句。
range(10)是[0,10)的整数。
故m=0*1*2*3*4*5*6*7*8*9=0,选项A正确。
3.C
本题考查的是Python语言相关知识。
Python语言中用缩进来标记语句块,故选项C正确。
C
4.A
本题Python相关知识点
IDLE是Python所内置的开发与学习环境,故除了可以通过书中的JupyterNotebook外,处理数据还可以通过PythonIDLE工具实现
IDLE是Python所内置的开发与学习环境,故除了可以通过书中的JupyterNotebook外,处理数据还可以通过PythonIDLE工具实现。
故本题选A选项
5.A
本题主要考查Python数据类型。
是字符串常量,3.14、2018是数值型常量,cnt是变量,故本题选A选项。
6.B
本题主要考查计算机文件存储结构。
由图可知,图中文件存储结构为树结构,python34为树的根结点(父节点);
图中python34根结点有8个子结点;
图中python34根结点下有5个子
图中python34根结点下有5个子树(子结点);
图中Tools是python34的子树(子结点),故本题选B选项。
7.B
本题主要考查Python程序设计语言。
python是一种解释型、面向对象的计算机程序设计语言;
python支持Windows操作系统,也支持Linux系统;
python源文件以***.
python源文件以***.py为扩展名;
python文件不能直接在命令行中运行,故本题选B选项。
8.D
本题主要考查Python常用函数。
abs(x)是返回x的绝对值,float()函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。
9.B
本题考查的是Python函数。
print()是Python输出函数;
input()是Python输入函数。
故选项B正确。
10.C
本题主要考查Python函数。
round(x,n)方法返回x的小数点四舍五入到n个数字,故要实现将实数型变量a的值保留三位小数,可以使用语句round(a,3),故本题选C选项。
11.A
本题主要考查Python序列类型。
Python的序列类型包括:
列表、元组和字典,故本题选A选项。
12.A
本题主要考查Python模块的导入。
Python模块导入的关键字是import,故本题选A选项。
13.C
本题主要考查Python表达式的计算。
“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“
“*”是乘法运算,“%”是取余运算,“*”、“%”优先级一样,按从左到右计算,故100-33*5%3=100-165%3=100-0=100,故“print(100-33*5%3)”语句输出的是100,故本题选C选项。
14.C
本题主要考查Python表达式的运算。
“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。
15.D
本题考查Python程序执行
输出c=0。
a-b=7,a+b=21,a/b=2,a%b=0。
故本题选D选项
16.D
本题主要考查Python字符串。
a[1:
3]取字符串索引第一个到第三个字符(不包括第三个),故a[1:
3]的值为"
,故本题选D选项。
17.B
本题主要考查Python运算符。
在Python语言等高级语言中,“=“往往被用于赋值语句,而表示相等的情况时,大多用“==”。
因此B选项正确。
18.D
本题主要考查Python序列拼接运算。
set={}生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。
19.D
本题主要考查Python表达式知识点。
书写表达式时运算符号不能省