1、试题python真题程序填空阅读填空程序试题试题python真题程序填空阅读填空程序试题一、程序填空1完善程序实现如下功能并保存:有5个人坐在一起,第5个人说他比第4个人小3岁;第4个人说他比第3个人小3岁;第3个人说他比第2个人小3岁;第2个人又说他比第1个人小3岁;第1个人说他是38岁。编写程序,计算出第5个人的年龄并显示。def age(n): if n = 1: c = _ else: c = age(n - 1) - 3 return _print(第5人的年龄:,age(_)input(运行完毕,请按回车键退出.)2阅读程序。分析条件语句的代码并回答问题。(1)如果不能使用int(
2、)函数,那么变量s的类型将会变成 _ 。(2)如果你的期末成绩是85,你得到的评价将会是_ 。(3)如果你的期末成绩是55,你得到的评价将会是_ 。(4)如果你得到的评价是“还可以再提升”,你的期末成绩应该在_和_之间。(5)“程序中出现的所有else都可以替换为elif,程序效果一样”,这种说法是_(填“对”或“错”)的。3阅读程序。分析下列切片相关程序并回答问题。list2=5,6,7,8,9print(list2:)print(list22:)print(list2:2) print(list21:3)print(list22:4) (1)程序第一个print的输出结果是_。(2)程序第
3、二个print的输出结果是_。(3)程序第三个print的输出结果是_。(4)程序第四个print的输出结果是_。(5)程序第五个print的输出结果是_。4阅读程序。分析有关多项式的代码并回答问题。求1!+2!+3!+20!的和。n=0s=0t=1 for n in range(1,21):t*=ns+=tprint(s) (1)n的作用是_。(2)s的作用是 _。(3)t的初值必须赋值为1,这是因为_。(4)t*=n的等价语句是 _(5)s+=t的等价语句是 _。5完善程序。以下是计算S=1+6+11+101的程序代码。请你在处填写正确的语句。s=0k=1while(k=101)_s=0k
4、=1while(k101): k=k+5 s=s+kprint(s+1)6调试程序。请阅读以下程序并写出运行结果。fruites=banana,apple,mangofor fruit in fruites: print(fruit)a=len(fruites)print(a=,a) _7以下是计算s = 1+6+11+.+ 101的程序代码,请补全程序。s=0for i in range(1,102, ):s=print( s)请补充完成上述程序_ _8分析完善程序已知包含25项的数列: 1,2/3,3/5,.,24/47,25/49。问题1 :写出该数列的通项公式f(n)= _问题2 :以
5、下是计算S=1+ 2/3+3/5+ . + 24/47+ 25/49的程序,请补全代码:s=0for i in range(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(d
6、ay8:10) print(year,month,sun)f_run=31,28,31,30,31,30,31,31,30,31,30,31 tall_day=0if _: for i in range(month-1): tall_day +=f_runi _ else: for i in range(month-1): tall_day +=f_runitall_day += sunprint(day+是当年的第+str(tall_day)+天)(1)将程序横线处补充完整(2)如输入“2020-4-19”为当年的第_天。12输入n,计算s=1!+2!+.+n!的未6位(不含前导0)。N=1
7、000000,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 #求得最大值除以最小值后的余数while r!=0: #如果余数不等0,则进行以下循环 m =_ #把最小值赋给m n =_ #把余数赋给n r = m%n #求得最大值除以最小值后的余数print(这两个数的最大公约
8、数为:,_)input(运行完毕,请按任意键退出.)15“百鸡百钱”问题是一个有名的数学问题,出自张丘建算经。其内容是:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?打开文件“考生文件夹644百鸡百钱.py”,完善程序实现以下功能并保存。(1)请不要更改源程序的结构,删除原题里的、。填写正确的代码,使程序完善。(2)运行程序,运行结果如图所示。# 请不要更改源程序的结构,删除原题里的、。填写正确的代码,使程序完善money=100 #一共100文钱num=100 #一共100只鸡cock_price=5 #
9、公鸡价格5文hen_price=3 #母鸡价格3文threechick_price=1 #3只小鸡1文for cock_num in range(1,money/cock_price+1): #公鸡只数可能为1-20 for hen_num in range(1,_): #母鸡只数可能为1-33 for chick_num in range(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
10、 if money1=money and num1=num: print (cock_num,hen_num,_) #(小鸡数)input(运行完毕,请按回车键退出.)16编写程序。如图所示的算法,请用Python程序写出实现该算法相应的代码。17已知圆柱体的底面半径为r,高为h,(均为正整数),小张编写了一个程序计算圆柱体的地面周长和面积,圆柱体侧面积以及圆柱体体积,其中圆周率定义为:3.14,请根据下列代码回答问题:r=int(input(“请输入半径r:”)h=int(input(“请输入高h:”)_c=2*pi*rs=pi*r*2S=c*hV=s*hprint(c,s,S,V)(1)解
11、决问题的程序用到的控制结构有:_(填:顺序结构、分支结构、循环结构)(2)请将程序补充完整。(3)请找出程序中的错误代码,并改正。_18现在有一个程序用来解决以下问题:如果有总量共1020个西瓜,第一天卖掉总数的一半后多卖出了两个,以后每天卖剩下的一半多两个,那么几天以后卖完呢?请将下列程序补充完整。tc=1020c=0while _ : tc=tc-(tc/2+2) _print(c)19(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问
12、题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。一般情况下,规模N=1时,问题的解是已知的。已知:从1到n的连续自然数相乘的积、叫做阶乘、用符号n!表示。如5!=12345,规定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)
13、 f(3)=3*f(2) f(2)=2*f(1) f(1)=1(问题求解)在python中用递归算法求1!+2!+n!(n的值为整数,从键盘输入)。请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。def f(n): if n=0: return 1 else: return _s=0n=int(input(请输入n:)for i in_: s=_print(s)20学校开展“奇妙的数字”研究性学习活动。张轩小组4人决定把课题定为探秘水仙花数。(1)张轩使用XX搜索引擎搜索到“水仙花数”是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153 = 13
14、+53+33,那么这个数就是一个“水仙花数”。XX属于_搜索引擎(全文,分类)(2)为了求解100-999这些数字中,哪些数字是“水仙花数”?张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图:k是可以重新赋值的,k是变量还是常量?_程序中处有空缺,请补充完整处的代码。_程序中逐一验证了100到999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做_(解析法,枚举法,递归法,二分法)。(3)在研究成果展示环节, 张轩小组可以使用什么软件制作探秘水仙花数的研究成果报告? (_)21学习了Python绘制图形操作后,信息小组接到了编程演
15、示的任务。为此,小组同学编写了一段代码,绘制出多个不同颜色的圆形。代码如下:import turtleturtle. bgcolor(black)colors=red, green, blue, yellowfor x range(100):turtle. pencolor(colorsx%4)turtle. circle(x)turtle. left(90)请分析任务,完成下列题目。(1)程序中处应填写(_) 。Aprint Binput Cin Dcolors(2)程序中x%4的作用是(_)。A计算x乘以4的结果B计算x除以4的整数部分C计算x除以4的小数部分D计算x除以4的余数(3)执行
16、此程序,绘制出圆形的总颜色数是(_)。A1 B4 C5 D100(4)执行此程序,绘制出圆形的总个数是(_)。A1 B4 C99 D100(5)此程序属于程序设计结构中的(_)。A顺序结构 B分支结构C循环结构 D跳转结构22某企业开展“运动打卡 动动有奖”活动:若员工在本月累计运动时间30小时以下,奖励0元;达到30但不足45小时奖励300元;达到45但不足60小时奖励450元;60小时及以上奖励500元。小强用python编写程序实现相关功能:输入某员工本月累计运动时间(时),输出其能获得的奖励金额。(1)实现上述功能的程序如下,请在划线处填入合适的代码。t=int(input(“请输入您
17、本月累计运动时间(时):”)if t0: print(“输入错误”)else: if t30: _ elif t45: m=300 _ m=450 else: m=500print(“您的奖励是:”,m)(2)当输入“-1”时,输出信息为_(选填,填字母:A输入错误 / B您的奖励是:0 / C您的奖励是:500)23小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢?请帮小金完成代码编程.def convert(s): m=0 le=len(s) key=sle-1 if key=B: n=2 elif key=D:
18、_ else: n=16 i=0 while i=0and c=Aand c=F: a=ord(c)-ord(A)+10 _ i+=1 return ms=input(请输入算式)result=0;suanfu1=;suanfu2=;s1=for i in range(len(s): c=si if c=+ or c=- or c=: _ suanfu1=suanfu2 suanfu2=c if suanfu1=: result=t if suanfu1=+: result=result+t if suanfu1=-: result=result-t s1= else: s1=s1+cprin
19、t(计算结果为+str(result)+D)(1)将程序横线处补充完整(2)如输入“1110B+10D-30H=”则输出结果为_。24某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“”表示已选择的选考科目。使用 Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2图1图2实现上述功能的 Python程序如下:import pandas as pdimport itertools读数据到pandas的 DataFrame结构中df_ (”xk73.csv”,sep.,headerinfer,encod
20、ingutf)km物理 ,化学 ,生物 ,政治 ,历史 ,地理 ,技术 按学校分组计数scdf.groupby(_ ,as_indexFalse).count()对分组计数结果进行合计,合计结果转换为 DF结构并转置为行df_sumpd.DataFrame(datasc.sum().Tdf_sum学校代码合计增加合计行resultsc.append(df_sum)百分比计算df_percentdf_sumdf_percent学校代码比例for k in km:perdf_percent.at,k/zrsdf_percentkper增加百分比行resultresult.append(df_per
21、cent)删除姓名列result_修改学生编号为总人数resultresult.rename(columns学生编号:总人数)保存结果,创建 Excel文件.生成的 Excel文件result.to_excel(学校人数统计.xlsx)(1)请在划线处填入合适的代码:(2)加框处语句的作用是_25若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。编写python程序,实现如下功能:输入n的值,统计显示n以内的所有双胞胎数。程序运行界面如图所示:实现上述功能的程序如下,请在划线处填入合适的代码。def isprime(x): for i in range(2,x): if_:
22、 return False return True n=int(input(“请输入一个正整数n:”) c=0 k=3 while k=n-2: if isprime(k) and_: print(k,k+2) _ k=k+1print(“共有”+str(c)+“对双胞胎数”)26小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在ssw.txt文档中,如图a所示,统计文档中出现次数最多的前十个关键词,结果如图b所示。文本数据处理的算法设计如图c所示,用Python语言编写的程序段如图d所示。请根据流程图的每个步骤,填写程序段编号,如A:B:D:。现填写C、E、F、G对应
23、的程序段编号C:_E:_F:_G:_图a 图b图c 图d27某仓库物品代码格式为“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程序实现如下,请在划线处填
24、入正确的代码:s=input(输入物品代码: )a=for i in range (0, 13):if _a. append(int (si) #append( )函数用于在列表末尾添加新的对象sum=0for i in range(0, 9) :_sdm=sum%10_if sdm=ydm :print(正确)else:print(错误)28请编写Python程序,实现如下功能需求:1)程序运行后,给出文字提示:“请输入一个正整数:”2)输入一个整数n按回车后,程序输出从1-n所有整数中既是3的倍数又是5的倍数的数。3)不要超过5行代码。程序运行举例:29蒙特卡洛方法不仅可以用来模拟投针实验
25、,还可以用来模拟求解圆周率T。请根据所学知识,并上网搜索有关资料,找到利用蒙特卡洛方法求解圆周率的原理、方法和Python程序。30操作说明:打开文件“Y:/2/2.py”,在代码窗口指定位置、处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。以下程序段的功能是:输入一个正整数n(1至100),输出它的约数的个数。s=0n=int(input(“请输入一个正整数:”)if n100: exit #输入的数不符合要求,退出for i in range(1,n+1): if n/i=0:_ s=s+i print(“约数的个数是:”,s)【参考答案】*试卷处理标记,请不要删
26、除一、程序填空1c 5 【详解】本题主要考查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字符串类型 你及格了喔 表现不错 程序结束 不及格 学习方法可能不对 程序结束 60 80 错 【详解】本题主要考查Python编程。 input() 函数接受一个标准输入数据,返回为 string 类型,因此此处为字符串类型;输入期末成绩为85时
27、,满足大于等于60及大于等于80条件,因此此处输出为“你及格了喔 表现不错 程序结束”;输入期末成绩为55时,满足小于60及大于等于30,因此此处输出为“不及格 学习方法可能不对 程序结束”;评价是“还可以再提升”项,属于大于等于60且小于80范围,因此为60,为80;elif后需添加判断条件,因此为错。【点睛】35,6,7,8,9 7,8,9 5,6 6,7 7,8 【详解】本题主要考查Python列表截取。Python列表的正向索引下标是从零开始,不是1;当只有冒号,表示全部元素;只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后);只有冒号尾下标i(代表的是从开始一直截取到i-1
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1