试题完整版python二级考试试题3Word文档下载推荐.docx
- 文档编号:17635160
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:12
- 大小:163.50KB
试题完整版python二级考试试题3Word文档下载推荐.docx
《试题完整版python二级考试试题3Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《试题完整版python二级考试试题3Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
c=input()
ifc=='
+'
:
print(a+b)
elifc=='
-'
print(a-b)
*'
print(a*b)
/'
print(a/b)
print(“输入错误,请重试”)
当程序运行后,小新依次输入92*
程序输出结果应为()
A.18B.11C.7D.4
6.下面哪个不是Python合法的标识符()
A.int_3B.print
C.countD.__name__
7.以下Python程序运行后,变量x和st的值分别是()。
A.801123678B.801“123678”C.801801D.123678“123678”
8.在python中运行print(“3+6”)的结果是()。
A.9B.“3+6”C.3+6D.“9”
9.下面Python代码运行后,a、b的值为()
a=23
b=int(a/10)
a=a-b*10
print(a,b)
A.232B.32C.320D.23
10.如下Python程序段
foriinrange(1,4):
forjinrange(0,3):
print("
Python"
)
语句print("
)的执行次数是()
A.3B.4C.6D.9
11.下列Python表达式的值不是2的是()。
A.3%2B.5//2C.1*2D.1+3/3
12.下列哪个语句在Python中是非法的?
()
A.x=y=z=1B.x=(y=z+1)C.x,y=y,xD.x+=y
13.下列可以作为python变量名的是()
A.5xB.x-1C.ifD.x_1
14.在Python中,判断n是否为偶数的表达式是()
A.n/2=0
B.n%2==0
C.n%2=0
D.n/2==0
15.以下是一段python程序:
它的可以用哪个流程图表达()。
A.
B.
C.
二、程序填空
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.输入n,计算s=1!
+...+n!
的未6位(不含前导0)。
N<
=1000000,n!
表示前n个正整数之积。
18.猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。
19.分析完善程序
已知包含25项的数列:
1,2/3,3/5,....,24/47,25/49。
问题1:
写出该数列的通项公式f(n)=_①
问题2:
以下是计算S=1+2/3+3/5+...+24/47+25/49的程序,请补全代码:
foriinrange(1,26):
s=s+②
print(“s=”,s)
补充完成上述通项公式和程序:
①f(n)=_________
②___________
20.以下是计算s=1+6+11+...+101的程序代码,请补全程序。
foriinrange(1,102, ):
s=
print(s)
请补充完成上述程序①_________②_________
21.请在空格处填写正确的代码,使程序完善。
实现功能:
用辗转相除法求解两个正整数的最大公约数。
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('
这两个数的最大公约数为:
______)
input("
运行完毕,请按任意键退出...."
【参考答案】***试卷处理标记,请不要删除
1.D
【详解】
本题主要考查Python语法格式。
不需要缩进的代码顶行写,前面不能留空白;
缩进可以用tab键实现,也可以用多个空格实现;
严格的缩进可以约束程序结构,可以多层缩进;
缩进是代码书写规则
解析:
D
缩进是代码书写规则要求,故本题选D选项。
2.C
本题主要考查Python程序while循环。
while1是一直为真,故k+=1会执行无限次,故本题选C选项。
C
3.C
本题考查Python程序调试
a<
b时,执行print(‘True’)。
故本题选C选项
4.D
本题考查数据、信息、知识、智慧的概念。
数据经过加工,可表达某种意义,则转变为信息;
信息经过加工,可用于指导实践,则转变为知识;
智慧是人类基于已有的知识,针对物质世界运动过程中产生的问题
智慧是人类基于已有的知识,针对物质世界运动过程中产生的问题根据获得的信息进行分析,对比,演绎找出解决方案的能力。
而本题中根据身高和体重提供的数据信息,结合Python知识编写相应的程序,从而进行算法设计程序编写来解决实际问题。
故属于智慧,选项D正确。
5.A
本题考查Python程序段。
当程序运行后,小新依次输入92*,即a=9,b=2,c=*,则elifc==‘*’:
成立,执行print(a*b),结果为18,故本题选A。
A
6.B
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
print是Python的关键字,不是合法的标识符,故本题选B选项。
B
7.B
本题主要考查Python语句执行。
语句X=123+678是整型类型运算,值为801;
语句St="
123"
+"
678"
是字符串运算,直接拼接,值为"
123678"
,故本题选B选项。
8.C
本题考查的是python中print函数。
print(str)#str是任意一个字符串,数字等。
“3+6”是字符串故输出为:
3+6,选项C正确。
9.B
本题主要考查Python程序的执行。
a=23,b=int(a/10)=2(int(x)是返回不大于x的最大整数),a=a-b*10=23-2*10=3,故代码运行后,a、b的值为3和2
a=23,b=int(a/10)=2(int(x)是返回不大于x的最大整数),a=a-b*10=23-2*10=3,故代码运行后,a、b的值为3和2,故本题选B选项。
10.D
外循环变量i的范围是1-3,内循环变量j的范围是0-2,故语句print("
)的执行次数是3*3=9,故本题选D选项。
11.A
本题主要考查Python表达式的运算。
3%2=1,5//2=2,1*2=2,1+3/3=2,故本题选A选项。
12.B
本题主要考查Python程序的语句。
x=y=z=1(给变量x、y、z均赋值为1),x,y=y,x(交换x和y的值),x+=y等价于x=x+y,x=(y=z+1)是非法的语句,故本题选B
x=y=z=1(给变量x、y、z均赋值为1),x,y=y,x(交换x和y的值),x+=y等价于x=x+y,x=(y=z+1)是非法的语句,故本题选B选项。
13.D
故x_1可以作为Python变量名,故本题选D选项。
14.B
Python中取余符号是“%”,“==”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2==0,故本题选B选项。
15.B
本题主要考查算法流程图知识点。
程序代码中有双分支语句if–else。
所以选B绘制有分支流程图,故本题选B选项。
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!
,故变量i的范围应是1—n,foriinrange(1,n+1)表示i的范围是[1,n],故此处填range(1,n+1)。
③循环体实现累加,将每一项阶乘f(i)加到s中,故此处填s+f(i)。
17.s=0
n=eval(input("
请输入一个数:
foriinrange(0,n):
f=1
forjinrange(1,i):
f=f*j
s+=f
print(s%1000000)
本题主要考查Python程序设计。
可以通过嵌套for循环实现题干要求,外层循环进行求和,内层循环实现阶乘,具体代码如下:
18.s=1
foriinrange(9):
s=(s+1)*2
第10天,只剩下一个桃子s=1,由题干每天早上都吃了前一天剩下的一半零一个,则第9天剩下的桃子为(s+1)*2,可以通过for循环求得第一天共摘了多少个桃子,具体代码如下:
s=1
19.n/(2*n-1)或n/(n*2-1)i/(2*i-1)或i/(i*2-1)
①分析数列可知,分子第n项是n,分母第n项是2*n-1,故该数列的通项公式f(n)=n/(2*n-1)或n/(n*2-1)。
②此处是对前n项进行求和,变量是i,使用语句s=s+i/(2*i-1)或s=s+i/(i*2-1),故此处填i/(2*i-1)或i/(i*2-1)。
20.s+i
本题主要考查Python循环结构。
题目要求计算1、6、11..101等差数列之和,其中公差为5,因此①为5;
s变量用于记录等差数列之和,需进行累加计算,因此②为s+i。
【点睛】
21.nrn
本题考查的是Python循环语句。
辗转相除法:
用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。
如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。
由n=min(x,y)可知最小值为n,故①处为n,由r=m%n可知余数为r,故②处为r,最后的除数是n(即最大公约数为n),故③处为n。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 试题 完整版 python 二级 考试