《Python程序设计》习题答案.pdf
《《Python程序设计》习题答案.pdf》由会员分享,可在线阅读,更多相关《《Python程序设计》习题答案.pdf(18页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、Python 程序设计程序设计 练习答案练习答案(部分)部分)黄锐军黄锐军 编编著著 练习一练习一 1.输入矩形的长与宽,计算矩形面积 2.输入一个时间值 s,它是距当日午夜的秒值,计算目前的时间,时间按 HH:MM:SS 格式输出。3如 a=1、b=2、c=3、d=0 写出下列的逻辑值:(1)ab and bc or a+bc(2)a-bc and not c(3)not d or bc+a or a(4)d and b and cd and a*bc(5)not(ab and cd)(6)a*bc or b+cd and not d(7)c+d=b+d and dc(8)da+b+d an
2、d bc and b=c(2)not ab and b not=c or x+y=x+y)and c-a and y-x(4)not(x=a)and(y=b)and 0(5)not(a+b)+c-1 and b+c/2(6)a or 1+a and b and c 练习二练习二 1.输入 a、b、c 三个参数,求解 ax2+bx+c=0 的两个根,假定 b2-4ac0。2输入 a、b、c 三个参数,以它们作为三角形的三边,判断是否可以构成一个三角形,如能则进一步计算其面积。三角形的面积 s 可以用以下公式计算:s=sqrt(p*(p-a)*(p-b)*(p-c)其中 p=(a+b+c)/2。3
3、输入一个字母,判断它是否为小写英文字母。4从键盘输入 5 个字符,统计0字符出现的次数。5输入两个整数,判断哪个大并输出结果。6输入一个字母,如它是一个小写英文字母,则把它变为对应大写字母输出。7输入一个年份,判断它是否为闰年。8从键盘输入 a、b 两个数,按大小顺序输出它们。9输入 a、b、c 三个整数,找出最小的数。10某企业发放的奖金根据利润提成。利润低于或等于 10 万元时,奖金可提 12%;利润高于 10 万元,低于 20 万元时,高于 10 万元的部分,可提成 8.5%;20 万到 40 万之间时,高于 20 万元的部分,可提成 6%;40 万到 60 万之间时高于 40 万元的部
4、分,可提成 4%;60 万到 100 万之间时,高于 60 万元的部分,可提成 2.5%,高于 100 万元时,超过 100 万元的部分按 1%提成,从键盘输入当月利润,求应发放奖金总数?11平面上有四个圆,圆心分别为(2,2),(-2,2),(-2,-2),(2,-2),圆半径为 1。今输入任一点的坐标,判断该点是否在这四个圆中,如在则给出是在哪一个圆中。练习三练习三 1.计算 1+2+4+100 的和。答:s=0 for i in range(1,101):s=s+i print(s)2.计算 1+1/3+1/5+1/99 的和。答:s=0 for i in range(1,100,2):
5、s=s+1/i print(s)3.从键盘输入一个字符串,直到回车结束,统计字符串中的大小写英文字母各有多少个。答:s=input()a=0 b=0 for x in s:if x=a and x=A and x=Z:b+=1 print(小写:,a,大写:,b)4.有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13,求出这个数列的前 20 项之和。答:s=0 a=1 b=2 t=for i in range(20):t=t+str(b)+/+str(a)if i19:t=t+else:t=t+=s=s+b/a c=a+b a=b b=c print(t+str(s)6 输入若
6、干个同学的成绩,计算平均成绩,输入的成绩为负数或大于 100 时表示结束输入。答:s=0 n=0 while True:m=float(input()if m100:break s=s+m n=n+1 print(平均:,s/n)7输入三个正整数 a、b、n,精确计算 a/b 的结果到小数后 n 位。8一个猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。答:n=10 while True:m=n flag=True for
7、 i in range(9):if m%2=0:m=m-m/2-1 else:flag=False break if m=1 and flag:break n=n+1 print(桃子数:,n)for i in range(9):print(i+1,n,-,n-n/2-1)n=n-n/2-1 结果:桃子数:1534 1 1534-766 2 766-382 3 382-190 4 190-94 5 94-46 6 46-22 7 22-10 8 10-4 9 4-1 9有一序列:1,3,5,8,13,21.,用 while 循环求出这个数列的前 20 项之和。答:a=3 b=5 s=1+3+5
8、 t=1+3+5+i=0 while i17:c=a+b s=s+c t=t+str(c)if(i=80:break print(y)15一球从 80 米高度自由下落,每次落地后返回原高度的一半,再落下。求它在第 10 次落地时共经过多少米?第 10 次反弹多高?答:h=80 s=h t=str(h)+for i in range(9):s=s+h t=t+str(h)+h=h/2 print(t.strip(+),=,s)print(第 10 次:,h)结果:80+80+40.0+20.0+10.0+5.0+2.5+1.25+0.625+0.3125=239.6875 第 10 次:0.15
9、625 练习练习四四 1.能直接修改字符串的某个字符吗?例如 s=abc,s0=1可以吗?2.输入一个字符串,输出它所包含的所有数字,例如输入23me3e,输出233 答:s=input()for x in s:if x=0 and xb:c=a-b else:c=b-a t=thour=c/3600 tmimute=(c-thour*3600)/60 tsecond=c-c-thour*3600-tminute*60 return t 练习五练习五 1.定义一个数学中的复数类 Complex,它有一个构造函数与一个显示函数,建立一个Complex 对象并调用该显示函数显示。答:class C
10、omplex:def _init_(self,x,y):self.x=x self.y=y def show(self):print(+str(self.x)+,+str(self.y)+)c=Complex(1,2)c.show()2.定义一个计算机类 MyComputer,它包含 CPU 类型(String 类型)、RAM 内存大小(Integer类型)、HD 硬盘大小(Integer 类型),设计它的构造函数,并设计一个显示函数,建立一个MyComputer 对象并调用该显示函数显示。答:class Computer:def _init_(self,CPU,RAM,HD):self.CP
11、U=CPU self.RAM=RAM self.HD=HD def show(self):print(self.CPU,self.RAM,self.HD)c=Computer(Intel i-7,8,500)c.show()2.设计一个整数类 MyInteger,它有一个整数变量,并有一个 Value 属性,可以通过为 Value存取该变量的值,还有一个转二进制字符串的成员函数 toBin 及转十六进制字符串的成员函数 toHex。答:class MyInteger:def _init_(self,v):self.Value=v def show(self):print(self.Value)
12、def toHex(self):return hex(self.Value)def toBin(self):return bin(self.Value)i=MyInteger(10)i.show()print(i.toHex()print(i.toBin()4.建立一个普通人员类 Person,包含姓名(m_name)、性别(m_sex)、年龄(m_age)成员变量。(1)建立 Person 类,包含 Private 成员 m_name、m_sex、m_age 成员变量;(2)建立 Person 的构造函数;(3)建立一个显示过程 Show(),显示该对象的数据;(4)派生一个学生类 Stud
13、ent,增加班级(m_class),专业(m_major),设计这些类的构造函数;(5)建立 m_class、m_major 对应的属性函数 sClass()、sMajor();(6)建立显示成员函数 Show(),显示该学生对象所有成员数据;答:class Person:def _init_(self,name,sex,age):self._m_name=name self._m_sex=sex self._m_age=age def show(self,end=n):print(self._m_name,self._m_sex,self._m_age,end=end)class Stude
14、nt(Person):def _init_(self,name,sex,age,mclass,major):Person._init_(self,name,sex,age)self._m_class=mclass self._m_major=major def sClass(self):return self._m_class def sMajor(self):return self._m_major def show(self):Person.show(self,end=)print(self._m_class,self._m_major)s=Student(A,M,20,Class A,C
15、omputer)s.show()5.建立一个时间类 Time,它包含时 hour,分 minute,秒 second 的实例属性(1)设计时间显示函数 show(self);(2)设计两个时间大小比较函数 compare(self,t),其中 t 是另外一个时间;答:class Time:def _init_(self,h,m,s):self.hour=h self.minute=m self.second=s def show(self):s=:02d:02d:02d.format(self.hour,self.minute,self.second)print(s)return s def
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python程序设计 Python 程序设计 习题 答案
限制150内