资源预览内容
第1页 / 共15页
第2页 / 共15页
第3页 / 共15页
第4页 / 共15页
第5页 / 共15页
第6页 / 共15页
第7页 / 共15页
第8页 / 共15页
第9页 / 共15页
第10页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
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,5if a = b: if c b: print (b是最大的数) else: print (c是最大的数)else: if c a: print (a是最大的数) else: print (c是最大的数)3使用Python编程,求1100间所有偶数的和。参考代码:sum=0for x in range(1,101): if x % 2=0: print(x) sum=sum+xprint(累加和是:,sum)4用Python编写程序,输入一年份,判断该年份是否是闰年并输出结果。注:凡符合下面两个条件之一的年份是闰年。(1) 能被4整除但不能被100整除。(2) 能被400整除。参考代码:year = int(input(Please enter the year: )if (year%4=0 and year%100!=0) or (year%400=0): 加个括号即可 print(year,is a leap year.)else:print(year,is not a leap year.)5用Python编程,假设一年期定期利率为3.25%,计算一下需要过多少年,一万元的一年定期存款连本带息能翻番?参考代码:cunkuan = 10000 #本金10000元years=0while cunkuan 100: grade = 输入错误!elif score = 90: grade = Aelif score = 80: grade = Belif score = 70: 无需写小于什么什么的 因为elif就已经是除了这个之外的了 grade = Celif score = 60: grade = Delif 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和该数本身之外,不能被其它任何整数整除的数。下图为参考流程图)参考答案:import mathn=int(input(请输入一个数:)x=int(math.sqrt(n)i,w=2,0for i in range (2,x+1): if n%i=0: w=1if w=1: print(n,不是素数。)else: print(n,是素数。)或import mathn=int(input(请输入一个数:)i,w=2,0while i = int(math.sqrt(n) and w=0: if n%i = 0: w = 1 break else: i = i+1if w=0: print(n,是素数!)else:print(n,不是素数!)或import mathn=int(input(请输入一个数:)i=2while i 0: x=(x+1)*2 day-=1print(total=,x)二文件部分:1.在当前目录下有一个文件名为temp.txt的文件,存放着上海从2014年3月10日(周一)到3月16日(周日)间一周的最高和最低气温(单位为摄氏度)。其中,第一行为最高气温,第二行为最低气温。编程,找出这一周中第几天最热(按最高气温计算)?最高多少度?这一周中第几天最冷(按最低气温计算)?最冷多少度?参考答案:flname=temp.txtf=open(flname)ht=(f.readline().strip() 暂且先只读一行L1=list(ht.split(,)lt=(f.readline().strip() 此处再读第二行L2=list(lt.split(,)f.close()for i in range(len(L1): L1i=int(L1i) L2i=int(L2i)maxVal=L10 可用max.(L1)maxDay=0minVal=L20minDay=0for i in range(1,len(L1): if L1imaxVal: maxVal=L1i maxDay=i if L2i=10: k+=1 else: k=0 这还要写吗?avg=int(sum/len(L3)print(周平均气温为:,avg)if k=5: print(上海这周已入春。)else:print(上海这周未入春。)3当前目录下有一个文件名为score1.txt的文本文件,存放着某班学生的计算机课成绩,共有学号、平时成绩、期末成绩三列。请根据平时成绩占40%,期末成绩占60%的比例计算总评成绩(取整数),并分学号、总评成绩两列写入另一文件score2.txt。同时在屏幕上输出学生总人数,按总评成绩计90以上、8089、7079、6069、60分以下各成绩档的人数和班级总平均分(取整数)。参考答案:f=open(score1.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) L1=line.
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号