Python学习习题选编.pdf
《Python学习习题选编.pdf》由会员分享,可在线阅读,更多相关《Python学习习题选编.pdf(20页珍藏版)》请在咨信网上搜索。
1、Python习题选编华东师大信息学院计算中心一.程序结构与算法部分:1.编写一个python程序,输入两个数,比较它们的大小并输出其中 较大者。参考代码:x=int(input(Please enter first integer:)y=int(input(Please enter second integer:)if(x=y):print(两数相同!。elif(x y):print(较大数为:”,x)else:print(较大数为:,y);2.写一个算法(流程图和python程序):输入三个数,输出其最大参考代码:a,b,c=3,4,5ifa=b:ifc b:print(b是最大的数)els
2、e:print(c是最大的数。else:ifc a:print(a是最大的数)else:print(c是最大的数)3.使用Python编程,求1100间所有偶数的和。参考代码:sum=Ofor x in range(l,101):if x%2=0:print(x)sum=sum+xprint(累力口和是:,sum)4.用Python编写程序,输入一年份,判断该年份是否是闰年并输出二口 2K。注:凡符合下面两个条件之一的年份是闰年。(1)能被4整除但不能被100整除。(2)能被400整除。参考代码:year=int(input(Please enter the year:)if(year%4=0
3、 and year%100!=0)or(year%400=0):print(yeaGis a leap year)else:print(yeaGis not a leap year)5.用Python编程,假设一年期定期利率为3.25%,计算一下需要过 多少年,一万元的一年定期存款连本带息能翻番?参考代码:一cunkuan=10000#本金 10000 元years=0whilecunkuan 100:grade=输入错误!elif score=90:grade=A1elif score=80:grade=Belif score=70:grade=Celif score=60:grade=De
4、lif score=0:grade=Eelse:grade=输入错误!print(grade)7.猜数游戏。预设一个09之间的整数,让用户猜一猜并输入所猜的数,如果 大于预设的数,显示“太大”;小于预设的数,显示“太小”,如此循环,直 至猜中该数,显示“恭喜!你猜中了!参考答案:num=7while True:guess=int(input(请输入你猜的数(09):)if guess=num:print(恭喜!你猜中了!。break;elif guess num:print(太大)else:print(太小”)8.输入一个数,判断这个数是否为素数,并输出判断结果。(所谓素数,是指除了 1和该数
5、本身之外,不能被其它任何整数整除的数。下图为参考流程图)参考答案:import mathn=int(input(请输入一个数:)x=int(math.sqrt(n)i,w=2,0fori in range(2zx+l):ifn%i=0:w=lif w=l:print(n,不是素数。)else:print(nj是素数。”)或import mathn=int(input(请输入一个数:)i,w=2,0whilei=int(math.sqrt(n)and w=0:ifn%i=0:w=1breakelse:i=i+lif w=0:print(n J 是素数!)else:print(n,不是素数!)或i
6、mport mathn=int(input(请输入一个数:)i=2whilei=60:second=second-60minute+=1minute+=5if minute=60:minute=minute-60hour+=1if hour=24:hour=0print(%d:%d:%d%(hour,minute,second)10.一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6的因 子为1、2、3,而6=1+2+3,因此6是完数。编程,找出1000之内的所有完 数,并输出该完数及对应的因子。(枚举法)参考答案:m=1000for a in range(2,m+l):s=aLl
7、=for i in range(l,a):if a%i=0:s-=i Ll.append(i)if s=0:print(完数:%d,因子包括:”a,end=*for j in range(l,len(Ll):printf%d%Llj/end=(,)print(n)11.编程,解决猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将 剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到 第10天早上想吃时,,只剩下一个桃子了。求第一天共摘多少个桃子。(迭代法)参考答案:day=9 x=lwhile day0:x=(x+l)*2 d
8、ay-=l print(total=zx)二.输入输出与文件部分:1.编写一个python程序,输入两个数,输出两数之和。参考代码:x=int(input(Please enter first integer:)y=int(input(Please enter second integer:)print(The sum is:);print(x+y);2.在当前目录卜有一个文件名为temp.txt的文件,存放着上海从2014年3月 10日(周一)到3月16日(周日)间一周的最高和最低气温(单位为摄氏度)。其中,第一行为最高气温,第二行为最低气温。编程,找出这一周中第几天最 热(按最高气温计算)
9、?最高多少度?这一周中第几天最冷(按最低气温计算)?最冷多少度?参考答案:fl name=te mp.txtf=open(flname)ht=(f.readline().strip()Ll=list(ht.split(/)lt=(f.readline().strip()L2=list(lt.split(;)f.close()fori in range(len(Ll):Lli=int(Lli)L2i=int(L2i)maxVal=LlOmaxDay=0minVal=L20minDay=0fori in range(l,len(Ll):if LlimaxVal:maxVal=LlimaxDay=i
10、if L2i=10:k+=lelse:k=0avg=int(sum/len(L3)print(周平均气温为:,avg)if k=5:print(上海这周已入春。”)else:print(上海这周未入春。)4.当前目录下有一个文件名为scorel.txt的文本文件,存放着某班学生的计 算机课成绩,共有学号、平时成绩、期末成绩三列。请根据平时成绩占40%,期 末成绩占60%的比例计算总评成绩(取整数),并分学号、总评成绩两列写入另 一文件score2.txt。同时在屏幕上输出学生总人数,按总评成绩计90以上、80 89、7079、6069、60分以下各成绩档的人数和班级总平均分(取整数)。参考答案
11、:f=open(scorel.txt)a=f.readline()line=(f.readline().strip()f2=open(score2.txt,w)f2.write(学号平均成绩n);L2=0,0,0,0,0count=0sum=0while(len(line)!=0):#print(line)Ll=line.split()f2.write(LlO+)f_score=int(int(Lll)*0.4+int(Ll 2)*0.6)if 90f_score=80:L2l+=1elif f_score=70:L22+=lelif f_score=60:L23+=lelse:L24+=lc
12、ount+=lsum+=f_scoref2.write(str(f_score)+n)line=(f.readline().strip()f.close()f2.close()avg_score=int(sum/count)print(学生总人数为d,按总评成绩计,90以上d人、8089间d人、6069间d人、60分以下d人。班级总平均%(count/L20/L2l,L22,L23/L24/avg_score)或f=open(scorel.txt)a=f.readlines()del a0L3=for line in a:line=line.strip()Ll=line.split()f_sc
13、ore=int(int(Ll l)*0.4+int(Ll 2)*0.6)L3.append(Ll0,f_score)f.close()c=0,0,0,0,0count=0sum=0f2=open(score2.txt”w)f2.write(学号平均成绩n);for L2 in L3:if 90L2l=80:cl+=lelif L2l=70:c2+=lelif L2l=60:c3+=lelse:c4+=lcount+=lsum+=L2lf2.write(L20+str(L2l)+n)f2.close()avg_score=int(sum/count)print(学生总人数为d,按总评成绩计,90
14、以上d人、8089间d人、6069间d人、60分以下d人。班级总平均 7079间d人、分为d分。7079间d人、分为d分。%(count,c0,cl,c2,c3,c4,avg_score)5.当前目录下有一个文本文件sampled,txt,其内容包含小写字母和大写字母。请将该文件复制到另一文件samplel2_copy.txt,并将原文件中的小写字母全部 转换为大写字母,其余格式均不变。参考答案:f=open(sa mplel2.txt)Ll=f.readlines()f2=open(samplel2_copy.txt/w)for line in LI:f2.write(line.upper(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 学习 习题 选编
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。