试题python真题程序填空阅读填空程序试题Word格式.docx
- 文档编号:16574415
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:28
- 大小:1.06MB
试题python真题程序填空阅读填空程序试题Word格式.docx
《试题python真题程序填空阅读填空程序试题Word格式.docx》由会员分享,可在线阅读,更多相关《试题python真题程序填空阅读填空程序试题Word格式.docx(28页珍藏版)》请在冰豆网上搜索。
s=0
t=1
forninrange(1,21):
t*=n
s+=t
print(s)
(1)n的作用是________________。
(2)s的作用是______________。
(3)t的初值必须赋值为1,这是因为_________。
(4)t*=n的等价语句是__________
(5)s+=t的等价语句是______。
5.完善程序。
以下是计算S=1+6+11+…+101的程序代码。
请你在
处填写正确的语句。
k=1
while(k<
=101)
__
101):
k=k+5
s=s+k
print(s+1)
6.调试程序。
请阅读以下程序并写出运行结果。
fruites=['
banana'
'
apple'
mango'
]
forfruitinfruites:
print(fruit)
a=len(fruites)
print('
a='
a)
_________________
7.以下是计算s=1+6+11+...+101的程序代码,请补全程序。
foriinrange(1,102, ):
s=
print(s)
请补充完成上述程序①_________②_________
8.分析完善程序
已知包含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)=_________
②___________
9.求50以内所有5的倍数的和。
10.利用for循环,分别计算1--100中奇数的和、偶数的和。
11.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:
能被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]
__________
else:
tall_day+=sun
print(day+"
是当年的第"
+str(tall_day)+"
天"
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
12.输入n,计算s=1!
+...+n!
的未6位(不含前导0)。
N<
=1000000,n!
表示前n个正整数之积。
13.编写一个程序,实现九九乘法口诀表。
14.请在空格处填写正确的代码,使程序完善。
实现功能:
用辗转相除法求解两个正整数的最大公约数。
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#求得最大值除以最小值后的余数
这两个数的最大公约数为:
______)
运行完毕,请按任意键退出...."
15.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。
其内容是:
公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?
打开文件“考生文件夹\644\百鸡百钱.py”,完善程序实现以下功能并保存。
(1)请不要更改源程序的结构,删除原题里的①、②、③。
填写正确的代码,使程序完善。
(2)运行程序,运行结果如图所示。
#请不要更改源程序的结构,删除原题里的①、②、③。
填写正确的代码,使程序完善
money=100#一共100文钱
num=100#一共100只鸡
cock_price=5#公鸡价格5文
hen_price=3#母鸡价格3文
threechick_price=1#3只小鸡1文
forcock_numinrange(1,money//cock_price+1):
#公鸡只数可能为1-20
forhen_numinrange(1,①________):
#母鸡只数可能为1-33
forchick_numinrange(1,②________):
#(3小鸡)只数可能为1-100
money1=cock_num*cock_price+hen_num*hen_price+chick_num*threechick_price
num1=cock_num+hen_num+chick_num*3
ifmoney1==moneyandnum1==num:
print(cock_num,hen_num,③________)#(③小鸡数)
16.编写程序。
如图所示的算法,请用Python程序写出实现该算法相应的代码。
17.已知圆柱体的底面半径为r,高为h,(均为正整数),小张编写了一个程序计算圆柱体的地面周长和面积,圆柱体侧面积以及圆柱体体积,其中圆周率定义为:
3.14,请根据下列代码回答问题:
r=int(input(“请输入半径r:
”))
h=int(input(“请输入高h:
_________________________
c=2*pi*r
s=pi*r**2
S=c*h
V=s*h
print(c,s,S,V)
(1)解决问题的程序用到的控制结构有:
__________________(填:
顺序结构、分支结构、循环结构)
(2)请将程序补充完整。
(3)请找出程序中的错误代码,并改正。
____________________________________________
18.现在有一个程序用来解决以下问题:
如果有总量共1020个西瓜,第一天卖掉总数的一半后多卖出了两个,以后每天卖剩下的一半多两个,那么几天以后卖完呢?
请将下列程序补充完整。
tc=1020
c=0
while______________:
tc=tc-(tc/2+2)
_____________
print(c)
19.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。
为求解规模为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!
+……+n!
(n的值为整数,从键盘输入)。
请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。
deff(n):
ifn==0:
return1
return_________
n=int(input("
请输入n:
foriin_______:
s=________
20.学校开展“奇妙的数字”研究性学习活动。
张轩小组4人决定把课题定为《探秘水仙花数》。
(1)张轩使用XX搜索引擎搜索到“水仙花数”是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:
153=13+53+33,那么这个数就是一个“水仙花数”。
XX属于____搜索引擎(全文,分类)
(2)为了求解100--999这些数字中,哪些数字是“水仙花数”?
张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图:
k是可以重新赋值的,k是变量还是常量?
____程序中①处有空缺,请补充完整①处的代码。
____程序中逐一验证了100到999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做______(解析法,枚举法,递归法,二分法)。
(3)在研究成果展示环节,张轩小组可以使用什么软件制作《探秘水仙花数》的研究成果报告?
(_____)
21.学习了Python绘制图形操作后,信息小组接到了编程演示的任务。
为此,小组同学编写了一段代码,绘制出多个不同颜色的圆形。
代码如下:
importturtle
turtle.bgcolor("
black"
colors=["
red"
"
green"
blue"
yellow"
forx①range(100):
turtle.pencolor(colors[x%4])
turtle.circle(x)
turtle.left(90)
请分析任务,完成下列题目。
(1)程序中①处应填写(________)。
A.printB.inputC.inD.colors
(2)程序中x%4的作用是(________)。
A.计算x乘以4的结果
B.计算x除以4的整数部分
C.计算x除以4的小数部分
D.计算x除以4的余数
(3)执行此程序,绘制出圆形的总颜色数是(________)。
A.1B.4C.5D.100
(4)执行此程序,绘制出圆形的总个数是(________)。
A.1B.4C.99D.100
(5)此程序属于程序设计结构中的(________)。
A.顺序结构B.分支结构
C.循环结构D.跳转结构
22.某企业开展“运动打卡动动有奖”活动:
若员工在本月累计运动时间30小时以下,奖励0元;
达到30但不足45小时奖励300元;
达到45但不足60小时奖励450元;
60小时及以上奖励500元。
小强用python编写程序实现相关功能:
输入某员工本月累计运动时间(时),输出其能获得的奖励金额。
(1)实现上述功能的程序如下,请在划线处填入合适的代码。
t=int(input(“请输入您本月累计运动时间(时):
ift<
0:
print(“输入错误”)
else:
ift<
30:
①_
elift<
45:
m=300
②_____
m=450
else:
m=500
print(“您的奖励是:
”,m)
(2)当输入“-1”时,输出信息为_________(选填,填字母:
A.输入错误/B.您的奖励是:
0/C.您的奖励是:
500)
23.小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢?
请帮小金完成代码编程.
defconvert(s):
m=0
le=len(s)
key=s[le-1]
ifkey=="
B"
:
n=2
elifkey=="
D"
_______
n=16
i=0
whilei<
=le-2:
c=s[le-1-i]
ifc>
="
0"
andc<
9"
a=ord(c)-ord("
elifc>
A"
F"
)+10
i+=1
returnm
s=input("
请输入算式"
result=0;
suanfu1="
;
suanfu2="
s1="
foriinrange(len(s)):
c=s[i]
ifc=="
+"
orc=="
-"
__________
suanfu1=suanfu2
suanfu2=c
ifsuanfu1=="
result=t
result=result+t
result=result-t
s1="
s1=s1+c
计算结果为"
+str(result)+"
(2)如输入“1110B+10D-30H=”则输出结果为___________。
24.某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。
使用Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2
图1
图2
实现上述功能的Python程序如下:
importpandasaspd
importitertools
#读数据到pandas的DataFrame结构中
df=________(”xk73.csv”,sep=‘.’,header=‘infer’,encoding=‘utf-8’)
km=[‘物理’,‘化学’,‘生物’,‘政治’,‘历史’,‘地理’,‘技术’]
#按学校分组计数
sc=df.groupby(‘___________’,as_index=False).count()
#对分组计数结果进行合计,合计结果转换为DF结构并转置为行
df_sum=pd.DataFrame(data=sc.sum()).T
df_sum[‘学校代码’]=‘合计’
#增加"合计"行
result=sc.append(df_sum)
#百分比计算
df_percent=df_sum
df_percent[‘学校代码’]=‘比例’
forkinkm:
per=df_percent.at[0,k]/zrs
df_percent[k]=per
#增加"百分比"行
result=result.append(df_percent)
#删除"姓名"列
result=______________
#修改"学生编号"为"总人数"
result=result.rename(columns={‘学生编号’:
‘总人数’})
#保存结果,创建Excel文件.生成的Excel文件
result.to_excel("学校人数统计.xlsx")
(1)请在划线处填入合适的代码:
(2)加框处语句的作用是__________________
25.若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。
编写python程序,实现如下功能:
输入n的值,统计显示n以内的所有双胞胎数。
程序运行界面如图所示:
实现上述功能的程序如下,请在划线处填入合适的代码。
defisprime(x):
foriinrange(2,x):
if①__________:
returnFalse
returnTrue
n=int(input(“请输入一个正整数n:
c=0
k=3
whilek<
=n-2:
ifisprime(k)and②___________:
print(k,k+2)
③___________
k=k+1
print(“共有”+str(c)+“对双胞胎数”)
26.小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在ssw.txt文档中,如图a所示,统计文档中出现次数最多的前十个关键词,结果如图b所示。
文本数据处理的算法设计如图c所示,用Python语言编写的程序段如图d所示。
请根据流程图的每个步骤,填写程序段编号,如A:
⑦B:
①D:
③。
现填写C、E、F、G对应的程序段编号.C:
__________E:
__________F:
__________G:
__________
图a
图b
图c
图d
27.某仓库物品代码格式为“X-XXXXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。
校验码由前面9个X计算得到,计算方法为:
从左边开始,第1个数字乘以1加上第2个数字乘以2……依次类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。
用Python设计一个程序,输入物品代码,判断输入的代码中校验码是否正确,如果正确输出“正确”,否则输出“错误"
。
运行样例如下所示:
样例1:
输入:
2-163-91475-4
输出:
正确
样例2:
2-163-91475-5
错误
(1)Python程序实现如下,请在划线处填入正确的代码:
输入物品代码:
"
a=[]
foriinrange(0,13):
if___
a.append(int(s[i]))#append()函数用于在列表末尾添加新的对象
sum=0
foriinrange(0,9):
____
sdm=sum%10
___
ifsdm==ydm:
正确"
错误"
28.请编写Python程序,实现如下功能需求:
1)程序运行后,给出文字提示:
“请输入一个正整数:
”
2)输入一个整数n按回车后,程序输出从1-n所有整数中既是3的倍数又是5的倍数的数。
3)不要超过5行代码。
程序运行举例:
29.蒙特卡洛方法不仅可以用来模拟投针实验,还可以用来模拟求解圆周率T。
请根据所学知识,并上网搜索有关资料,找到利用蒙特卡洛方法求解圆周率Π的原理、方法和Python程序。
30.操作说明:
打开文件“Y:
/2/2.py”,在代码窗口指定位置<
1>
、<
2>
处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。
以下程序段的功能是:
输入一个正整数n(1至100),输出它的约数的个数。
n=int(input(“请输入一个正整数:
ifn<
1orn>
100:
exit#输入的数不符合要求,退出
foriinrange(1,n+1):
ifn//i=0:
___<
s=s+i<
print(“约数的个数是:
”,s)
【参考答案】***试卷处理标记,请不要删除
1.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。
2.字符串类型你及格了喔表现不错程序结束不及格学习方法可能不对程序结束6080错
本题主要考查Python编程。
①input()函数接受一个标准输入数据,返回为string类型,因此此处为字符串类型;
②输入期末成绩为85时,满足大于等于60及大于等于80条件,因此此处输出为“你及格了喔表现不错程序结束”;
③输入期末成绩为55时,满足小于60及大于等于30,因此此处输出为“不及格学习方法可能不对程序结束”;
评价是“还可以再提升”项,属于大于等于60且小于80范围,因此④为60,⑤为80;
elif后需添加判断条件,因此⑥为错。
【点睛】
3.[5,6,7,8,9][7,8,9][5,6][6,7][7,8]
本题主要考查Python列表截取。
Python列表的正向索引下标是从零开始,不是1;
当只有冒号,表示全部元素;
只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后);
只有冒号尾下标i(代表的是从开始一直截取到i-1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 试题 python 程序 填空 阅读