Python入门教程优质程序填空阅读填空程序试题.docx
- 文档编号:18379463
- 上传时间:2023-04-24
- 格式:DOCX
- 页数:32
- 大小:1.38MB
Python入门教程优质程序填空阅读填空程序试题.docx
《Python入门教程优质程序填空阅读填空程序试题.docx》由会员分享,可在线阅读,更多相关《Python入门教程优质程序填空阅读填空程序试题.docx(32页珍藏版)》请在冰豆网上搜索。
Python入门教程优质程序填空阅读填空程序试题
Python入门教程优质程序填空阅读填空程序试题
一、程序填空
1.已知圆柱体的底面半径为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)请找出程序中的错误代码,并改正。
____________________________________________
2.请在空格处填写正确的代码,使程序完善。
实现功能:
绘制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._________
3.调试程序。
请阅读以下程序并写出运行结果。
#ex16.py
i=0
sum=0
whilei<10:
ifi%3==0:
sum+=i
print(i)
i=i+1
print('sum',sum)
_________
4.编写程序。
信息社团的三个同学和Bruce一起做游戏,他们的游戏规则很简单,从1开始依次报数,每当一个数能被7整除或者十位是7就要跳过这个数,现在给出一个数N,请输入从1到N(包含N)中要跳过的数。
5.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
**
***
****
6.程序分析题
学校举行校园歌手大赛,评委由6人组成。
评分方法:
去掉一个最高分和一个最低分,计算其余4位评委的平均分,作为选手的最终得分。
max记录最高分;min记录最低分;s记录六位评委的总分;aver记录最终得分。
第1步:
从文本框中分别读入6位评委的打分并依次存入到a
(1)至a(6)中
第2步:
将第1位评委的打分a
(1)分别赋给最高分max,最低分min和总分S
第3步:
利用循环结构把另外5位评委的打分累加给s从而求出6位评委的总分s,同时把5位评委的打分与max和min进行比较,得出6位评委中的最高分max和最低分min。
第4步:
从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分。
max=a[0]
min=a[0]
s=0
foriinrange(6):
s=s+a[i]
ifa[i]>max:
max=a[i]
ifa[i] min=a[i] aver=()/4 (1)在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由______控件生成的。 A.EntryB.LabelC.FrameD.Button (2)题目中算法描述采用的是__________A、自然语言B、伪代码C、流程图D、.N-S图 (3)下列程序代码片段对应于算法描述中的第2步至第4步。 请填写片段中空白处的表达式填写完整________ 7.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程序”, 请输入以下代码,自己输入数据运行,结果截图提交 8.求50以内所有5的倍数的和。 9.编写一个程序,它将找到所有这些数字,可被7整除,但不是5的倍数,2000年至3200年(包括在内)。 得到的数字应按逗号分隔的顺序打印在一行上。 提示: 考虑使用range(#begin,#end) 10.哥德巴赫在1742年提出了以下猜想: 任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。 importmath defss(n): Flag=True i=2 whilei<=int(math.sqrt(n))andFlag: if_____________ Flag=False _____________ returnFlag n=int(input(“输入一个大于2的偶数”)) foriinrang(2,n//2+1): if____________ print(str(n)+"="+str(i)+"+"+str(n-i)) 如果输入“8”则结果显示_____ 11.编写程序,实现从键盘输入数据,实现输入数据转换成大写并输出。 12.猴子吃桃问题: 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。 以后每天早上都吃了前一天剩下的一半零一个。 到第10天早上想再吃时,见只剩下一个桃子了。 求第一天共摘了多少。 13.操作说明: 打开文件“Y: /1/1.py”,将程序补充完整,不得增加,删除语句、或改变程序原有结构,操作结束后保存。 以下程序段的功能是: 根据从键盘上输入的表示星期几的数字,若输入的数字不是在范围(1至7)输出“输入错误! ”,否则输出对应的英文星期的简称如“Mon、Tue、Wed、Thu、Fri、Sta、Sun”。 n=int(input(“请输入一个数: ”)) list=[“Mon”,”Tue”,”Wed”,”Thu”,”Fri”,”Sta”,”Sun”] if________: print(“输入错误! ”) else: print(________) 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#求得最大值除以最小值后的余数 print('这两个数的最大公约数为: ',______) input("运行完毕,请按任意键退出....") 15.在一千多年前的《孙子算经》中,有这样一道算术题: “今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何? ”。 即一个数除以3余2,除以5余3,除以7余2,求这个数。 i=①________ while(i%3! =2②________i%5! =3ori%7! =2): i=③________ print(i) 16.(项目情境)一元二次方程ax2+bx+c=0(a≠0),当b2-4ac≥0,方程有两个不同的实数根,当b2-4ac<0时,方程无实数根。 (问题求解)下面的python程序实现的功能是判断方程是否有实数根。 请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。 importmath a=int(input("请输入a的值: ")) b=int(input("请输入b的值: ")) c=int(input("请输入c的值: ")) d=_____#将表达式b2-4ac的值赋给变量d if____ print("x1=",(-b+math.sqrt(d))/(2*a))#输出方程的其中一个实数根 print("x2=",(_________)#输出方程的另一个实数根 else: _________#输出“方程无实数根” 17.有如下程序段: sum=0 foriinrange(1,20,3): sum+=i print(“sum=”,sum) (1)循环变量i的初值为: _________,终值为: _________,步长为: __________。 (2)该程序执行后,输出的结果为: ____________________。 18.某品牌手机第一年销量为20000台,假设平均每年的销量比上一年增加68%,请问几年后能使总销量达到60000台。 下面的程序能实现上述的功能,请将缺失的代码补充完整。 total=every_year=20000 year=1 while__________________: every_year+=____________ total+=every_year year+=1 print(year) 19.小敏有10万元本金,想要购买银行保证收益型理财产品。 每年到期后连本带利仍购买此种理财。 请你帮助小敏分析,在年收益率不变的情况下,多少年后小敏的累计收益能超过本金,请完成程序填空。 (例如输人: 5.15%,输出: 14年后收益超过本金。 ) 1s=input("请输入年利率: ") 2rate=float(s[: -1])*0.01 3money=100000 4year=0 5whilemoney<=200000: 6money=round(),2) 7year=year+1 8print(year,"年后收益超过本金。 ”) (1)程序第6行下划线处应填入___________。 (2)程序第2行的作用是____________,并赋值给变量rate。 (3)该程序主要是通过while实现____________结构。 20.求解a到b内(包含a和b)所有的质数,并对每个质数的每一位数字求和。 请完善程序。 程序如下: importmath defIsPrime(i): ifi==1: returnFalse forjinrange(2,int(math.sqrt(i))+1): if____: returnFalse returnTrue a=int(input("请输入a: ")) b=int(input("请输入b: ")) summ=0 foriinrange(a,b+1): ifIsPrime(i): ________ whilet>0: summ=summ+t%10 _________ print("数字和为: ",summ) 21.辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。 它是已知最古老的算法,其可追溯至公元前300年前。 辗转相除法的算法步骤是,对于给定的两个正整数m、n(m>n),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n,n=r),继续上面的除法,直到余数为0,这时m就是原来两个数的最大公约数。 因为这个算法需要反复进行除法运算,故被形象地命名为“辗转相除法”。 小曲设计了辗转相除法的算法,请根据下面算法回答问题。 描述一 描述二 描述三 ①输入两个正整数m,n(m>n); ②计算m除以n所得的余数r; ③m=n,n=r; ④若r=0,则m,n的最大公约数等于m;否则转到步骤②; ⑤输出最大公约数m; ⑥结束。 (1)描述一是________描述法;描述二是流程图描述法;描述三是计算机程序语言描述法。 (2)在描述三中代码4到6行作用是__________。 (3)在描述三程序设计中,补充代码第8行划线处为__________。 22.小强开展网上直播售货,为此购买了以下直播硬件设备: ①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器 请回答下列问题: (1)在购买的直播硬件设备中,属于模数转换的设备是__________(多选,填序号) (2)小强选择借助某著名直播平台售货,根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100: 1,在不考虑视频传输优化的情况下,问小强家目前10Mbps的宽带__________(选填: 能/不能)满足直播要求。 请列式证明__________。 (3)小强将某一天的售货情况从平台导出,保存为文件shqk.xlsx.数据已按“流水号”升序排序,如图a所示。 流水号为2019030602的售货记录中,已成交的商品类别数是__________(填写数字),该流水号的总利润是__________元(填写数字,保留1位小数) 图a (4)为了快速了解各类别商品的利润,小强用python编程处理。 处理的结果界面如图b所示。 部分代码如下,请在①②划线处填写合适的代码。 图b importpandasaspd importnumpyasnp importmatplotlib.pyplotasplt detail=pD.read_excel(___) print(detail) foriinrange(len(detail[: ])): ifdetail[‘成交与否’][i]==1: detail[‘lirun’]=___ dg=detai1[[‘类别’,‘lirun’]].groupby(by=‘类别’) print(“总利润”,detail[‘lirun’].sum()) ’数据可视化代码略 23.密码强度检测。 编写python程序,实现如下功能: 输入要检测的密码,输出密码强度结果。 密码字符分为数字字符、字母和其他符号三类。 密码强度的检测方法为: 若密码位数少于8位,则不进行强度检测,给出提示“密码位数不能少于8位,请重新输入! ”。 若密码位数在8位及以上,则进行强度检测: 若密码字符属于同一类字符,则密码强度为“弱”;若密码字符属于不同的二类字符,则密码强度为“中等”;若密码字符属于不同的三类字符,则密码强度为“强”。 (1)若输入“12abcd5! ”,则输出结果为_________(选填,选字母: A.密码位数不能少于8位,请重新输入! /B.弱/C.中等/D.强) (2)实现上述功能的程序如下,请在划线处填入合适的代码。 password=input(“请输入要检测的密码: ”) ①_______________ ifn<8: print(“密码位数不能少于8位,请重新输入! ”) else: n1=0 n2=0 n3=0 foriinrange(0,n,1): ②_______ if“0”<=ch<=“9”: n1=1 elif“a”<=ch<=“z”or“A”<=ch<=“Z”: n2=1 else: n3=1 ③_____ ifx==3: print(“强”) elifx==2: print(“中等”) else: print(“弱”) 24.学习了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.跳转结构 25.某企业开展“运动打卡动动有奖”活动: 若员工在本月累计运动时间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) 26.小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢? 请帮小金完成代码编程. defconvert(s): m=0 le=len(s) key=s[le-1] ifkey=="B": n=2 elifkey=="D": _______ else: n=16 i=0 whilei<=le-2: c=s[le-1-i] ifc>="0"andc<="9": a=ord(c)-ord("0") elifc>="A"andc<="F": a=ord(c)-ord("A")+10 _____________ i+=1 returnm s=input("请输入算式") result=0;suanfu1="";suanfu2="";s1="" foriinrange(len(s)): c=s[i] ifc=="+"orc=="-"orc=="=": __________ suanfu1=suanfu2 suanfu2=c ifsuanfu1=="": result=t ifsuanfu1=="+": result=result+t ifsuanfu1=="-": result=result-t s1="" else: s1=s1+c print("计算结果为"+str(result)+"D") (1)将程序横线处补充完整 (2)如输入“1110B+10D-30H=”则输出结果为___________。 27.阅读程序。 分析以下Python程序并回答问题。 who='我的' action='是' destination='镜像世界' number='153' code='通行密码' print(who+destination+code+action+str(number)) (1)变量who的数据类型_______________。 (2)类似number的数据类型______________。 (3)print语句输出的结果是______________。 (4)str(number)的作用是_________。 (5)“+”在程序中的作用是____________。 28.小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在ssw.txt文档中,如图a所示,统计文档中出现次数最多的前十个关键词,结果如图b所示。 文本数据处理的算法设计如图c所示,用Python语言编写的程序段如图d所示。 请根据流程图的每个步骤,填写程序段编号,如A: ⑦B: ①D: ③。 现填写C、E、F、G对应的程序段编号.C: __________E: __________F: __________G: __________ 图a 图b 图c 图d 29.使用Python自身提供的IDLE集成开发环境录入以下代码及调试 运行,检测结果。 #鸡兔同笼 forxinrange(1,23): y=35-x if4*x+2*y==94: print("兔子有%s只,鸡有%s只"%(x,y)) 特别提示: 代码录入完毕,调试运行,检测错误,讨论错误原因,上网查找错误格式的处置办法,直至能正确输出结果。 30.(最大公约数)用辗转相除法求两个正整数的最大公约数。 代码如下: defgcd(m,n): r= whiler! =0: m=n n= return a=int(input(‘请输入a的值: ’)) b=int(input(‘请输入b的值: ’)) print(‘最大公约数是: ') 填空: ________________________________________ 【参考答案】***试卷处理标记,请不要删除 一、程序填空 1.顺序结构pi=3.14r=float(input(“请输入半径r: ”))整型和实数型不能直接运算,结果会有误差h=float(input(“请输入高h: ”)) 【详解】 本题主要考查Python程序执行与调试。 ①分析程序可知,解决问题的程序用到的控制结构有: 顺序结构。 ②圆周率定义为: 3.14,故第二空填pi=3.14。 ③r=float(input(“请输入半径r: ”))整型和实数型不能直接运算,结果会有误差h=float(input(“请输入高h: ”))。 2.yyshow() 【详解】 本题主要考查Python程序绘制图像。 ①绘制y=x2-2x+1的图像,故此处填y。 ②根据横纵坐标x和y绘制图,故此处填y。 ③此处调用显示函数show(),故填show()。 3.0 【详解】 本题主要考查Python中While循环结构。 Python编程中while语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。 题中循环体内含If选择结构,即当i%3为0时,执行sum变量累加i,输出i,i自增加1操作,因此本题输出0后,循环无限执行下去。 【点睛】 4.N=int(input("请输入一个数")) foriinrange(1,N+1): if(i%7==0ori/10==7): print(i,end="") 【详解】 本题考查Python语言编程解决实际问题。 本题要找到能被7整除或者十位是7的数,并且这两个条件是或的关系,其关键代码为i%7==0ori/10==7。 程序运行代码详见下图: 5.layer=i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 入门教程 优质 程序 填空 阅读 试题