目录不能有小于号
-
- 正在更新中……@202212.18
- 第一章习题
- 第二章习题
-
- 2.1 Python数据类型有哪些?分别什么用途?
- 2.2 把下列数学表达式转换成等价的Python表达式。
- 2.3 数学上 3小于x小于10 表示成正确的Python表达式为?
- 2.4 计算下列表达式的值(可在上机时验证),设a=7,b=-2,c=4。
- 2.5 求列表s=[9,7,8,3,2,1,55,6]中的元素个数,最大数,最小数?如何在列表s中添加一个元素10?如何从列表s中删除一个元素55?
- 2.6 元组与列表主要区别?s=(9,7,8,3,2,1,55,6)能添加元素吗?
- 2.7 已知有列表lst=[54,36,75,28,50],请完成以下操作?
- 2.8 三个集合,python={…………},java={…………},C={…………},求:
- 第三章习题
-
- 3.1 输入一个整数n,判断其能否同时被5和7整除,如能则输出“xx能同时被5和7 整除”,否则输出“xx不能同时被5和7 整除”。要求“xx”为输入的具体数据。
- 3.2 输入一个百分制的成绩,经判断后输出该成绩的对应等级。其中,90分以上为“A”,80~ 89分为“B”,70~ 79分为“C”,60~69分为“D”,60分以下为“E”。
- 3.3 某百货公司为了促销,采用购物打折的办法。1000元以上者,按九五折优惠;2000元以上者,按九折优惠;3000元以上者,按八五折优惠;5000元以上者,按八折优惠。编写程序,输入购物款数,计算并输出优惠价。
- 3.4 编写一个求整数n阶乘(n!)的程序。
- 3.5利用while循环创建一个包含10个奇数的列表,然后计算该列表的和与平均值。
- 3.6 编写程序,求1!+3!+5!+7!+9!。
- 3.7 计算公式s的值,s =1 + (1 + 2) + (1 + 2 + 3) + … + (1 + 2 + 3 + … + n)
- 3.8 枚举法:“百马百瓦问题”
- 3.9 斐波那契函数问题
- 3.10 找出1与100之间的全部“同构数”。
- 3.11 猴子吃桃问题。
- 3.12 输入一个字符串,然后依次显示该字符串的每个字符以及该字符的Ascii码。
- 3.13 开发猜数字小游戏,计算机随机生成100以内的数字,玩家猜大或猜小都给出提示,直至猜中,同时统计猜测次数。
- 3.14 枚举法:已知abc+cba=1333,其中a,b,c均为一位数,编程求出满足条件的a,b,c所有组合。
- 第四章·函数
-
- 4.1 将华氏温度转换为摄氏温度
- 4.2 编写一个函数判断一个数是否为素数,并通过调用该函数求出所有三位数的素数。
- 4.3 编写一个函数,求满足以下条件的最大的n值:
- 4.4 编写一个函数multi(),参数个数不限,返回所有参数的乘积。
- 4.5 编写一个函数,功能是求两个正整数m和n的最小公倍数。
- 4.6 求一元二次方程ax2+bx+c=0的根,用3个函数分别求当b2-4ac大于0,等于0和小于0时的根,并输出结果。要求从主函数输入a,b,c的值。
- 4.7 编写一个函数,调用该函数能够打印一个由指定字符组成的 n 行金字塔。其中,指定打印的字符和行数 n分别由两个形参表示。
- 4.8 编写一个判断完数的函数。完数是指一个数恰好等于它的因子之和,如 6=1+2+3,6就是完数。
- 4.9 编写一个将十进制数转换为二进制数的函数。
- 4.10 编写一个判断字符串是否是回文的函数。
- 4.11 编写一个函数,实现统计字符串中单词的个数并返回。
- 4.12 利用 map()函数,把用户输入的不规范的英文名字,变为首字母大写,其他小写的规范名字。例如输入:['adam',LISA',barT'],输出:['Adam',Lisa','Bart]。
- 4.13 请利用 filter()筛选出回数。回数是指从左向右读和从右向左读都是一样的数,如12321,909。
- 4.14 假设我们用一组 tuple 表示学生名字和成绩:
- 4.15 用 filter()把一个序列中的空字符串删掉。
- 第五章习题
正在更新中……@202212.18
第一章习题
1.1 Python语言有哪些特点和缺点?
Python支持命令式编程、函数式编程,完全支持面向对象程序设计,语法简洁清晰,并且拥有大量的几乎支持所有领域应用开发的成熟扩展库。 Python为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容。用Python开发,许多功能不必从零编写,直接使用现成的即可。除了内置的库外,Python还有大量的第三方库,也就是别人开发的,供你直接使用的东西。当然,如果你开发的代码通过很好的封装,也可以作为第三方库给别人使用。 Python同时也支持伪编译将Python源程序转换为字节码来优化程序和提高运行速度,可以在没有安装Python解释器和相关依赖包的平台上运行。 任何编程语言都有缺点,Python缺点主要有: (1)运行速度慢。 (2)代码不能加密。 (3)用缩进来区分语句关系的方式还是给很多初学者带来了困惑。最常见的情况是tab和空格的混用会导致错误。
1.2 Python基本输入输出函数是什么?
用Python进行程序设计,输入是通过input( )函数来实现的,
input( )的一般格式为:x=input(‘提示:’)
该函数返回输入的对象。可输入数字、字符串和其它任意类型对象。
Python 3.7中使用print()函数进行输出。
1.3 如何在IDLE中运行和调试Python程序?
在“Python Shell”窗口中单击“Debug”菜单中的“Debugger”菜单项,就可以启动IDLE的交互式调试器。这时,IDLE会打开的“Debug Control”窗口,并在“Python Shell”窗口中输出“[DEBUG ON]”并后跟一个“>>>”提示符。这样,我们就能像平时那样使用这个“Python Shell”窗口了,只不过现在输入的任何命令都是允许在调试器下。
我们可以在“Debug Control”窗口查看局部变量和全局变量等有关内容。
1.4 为什么要在程序中加入注释?怎么在程序中加入注释?
一个好的、可读性强的程序一般包含20%以上的注释
方法一:以#开始,表示本行#之后的内容为注释。
#循环输出0到9数字
for i in range(10):
print (i, end=’ ‘)
方法二:包含在一对三引号’‘’…‘’'或"“”…“”"之间且不属于任何语句的内容将被解释器认为是注释。
第二章习题
2.1 Python数据类型有哪些?分别什么用途?
Python 数值类型用于存储数值。整型(int) :通常被称为是整型或整数,是正或负整数,不带小数点。长整型(long) :无限大小的整数,整数最后是一个大写或小写的L。在Python3里,只有一种整数类型 int,没有Python2 中的 Long。浮点型(float):浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.78e2就是2.78 x 102 = 278)复数(complex):复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示,复数的虚部以字母j或J结尾。如:2+3j。
2.2 把下列数学表达式转换成等价的Python表达式。
(1)
import math a,b,c=1,3,1
expression=(-b+math.sqrt(bb-4ac))/2a
print(expression)
(2)
x,y,a=1,2,3
expression2 = (xx+yy)/(2aa)
print(expression2)
(3)
x,y,z=1,2,3
expression3=(x+y+z)/math.sqrt(x3+y3+z**3)
print(expression3)
(4)
a,c,d=1,2,3
expression4=(3+a)**2/(2c+4d)
print(expression4)
(5)
x,y=1,2
expression5=2*math.sin((x+y)/2)*math.cos((x-y)/2)
print(expression5)
2.3 数学上 3小于x小于10 表示成正确的Python表达式为?
(x>3)and(x<10)
2.4 计算下列表达式的值(可在上机时验证),设a=7,b=-2,c=4。
(1)3 * 4 ** 5 / 2:1536_ (2)a * 3 % 2:1_ (3)a%3 +bb-
c//5:5_ (4)b**2-4a*c:_-108__
2.5 求列表s=[9,7,8,3,2,1,55,6]中的元素个数,最大数,最小数?如何在列表s中添加一个元素10?如何从列表s中删除一个元素55?
(1)元素个数:print(len(s))
(2)最大数:print(max(s))
(3)最小数:print(min(s))
(4)添加元素:s.append(10)
(5)删除指定元素:s.remove(55)
2.6 元组与列表主要区别?s=(9,7,8,3,2,1,55,6)能添加元素吗?
元祖不能添加元素,列表可以添加元素。元组元素不能修改,但元组可以连接另一个元组,组成一个新元组。
2.7 已知有列表lst=[54,36,75,28,50],请完成以下操作?
(1)列表尾部插入元素52: lst.append(52)
(2)在元素28前面插入66:lst.insert(3,66)
(3)删除并输出28:print(lst.pop(3))
(4)将列表按降序排序:lst.sort(reverse=True)
(5)清空整个列表:lst.clear()
2.8 三个集合,python={…………},java={…………},C={…………},求:
(1)只会python不会C的人:(Python-C)
(2)3种语言都会的人:(python&Java&C)
(3)差并交:-,|,&
第三章习题
3.1 输入一个整数n,判断其能否同时被5和7整除,如能则输出“xx能同时被5和7 整除”,否则输出“xx不能同时被5和7 整除”。要求“xx”为输入的具体数据。
a=int(input(“请输入整数:”))
if a%5 == 0 and a%7 == 0:
print(a,“能被5,7同时整除”)
else:print(a,“不能被5,7同时整除”)
3.2 输入一个百分制的成绩,经判断后输出该成绩的对应等级。其中,90分以上为“A”,80~ 89分为“B”,70~ 79分为“C”,60~69分为“D”,60分以下为“E”。
a=int(input(“请输入整数:”))
if a>=90:
print(‘A’)
elif a>79 and a<90:
print(‘B’)
elif a > 69 and a < 80:
print(‘C’)
elif a > 59 and a < 70:
print(‘D’)
else:print(‘E’)
3.3 某百货公司为了促销,采用购物打折的办法。1000元以上者,按九五折优惠;2000元以上者,按九折优惠;3000元以上者,按八五折优惠;5000元以上者,按八折优惠。编写程序,输入购物款数,计算并输出优惠价。
a=input(“”)
a=int(a)
if a>=5000:
print(“优惠价为:”,a0.8)
elif a>=3000:
print(“优惠价为:”,a0.85)
elif a>=2000:
print(“优惠价为:”,a0.9)
elif a>=1000:
print(“优惠价为:”,a0.95)
else:
print(“没有优惠哦! 价格为:”,a)
3.4 编写一个求整数n阶乘(n!)的程序。
n=int(input(“请输入整数n:”))
s,i=1,1
while i<=n:
s=s*i
i=i+1
print(s)
3.5利用while循环创建一个包含10个奇数的列表,然后计算该列表的和与平均值。
lst=[]
for i in range(20):
if i%2 !=0:
lst.append(i)
sum1=sum(lst)
sumAve=sum1/10
print(lst,sum1,sumAve)
3.6 编写程序,求1!+3!+5!+7!+9!。
i,s,ss = 1,1,0
for n in range(10):
if n%2!=0:
while i<=n:
s=s*i
i=i+1
ss=ss+s
print(ss)
3.7 计算公式s的值,s =1 + (1 + 2) + (1 + 2 + 3) + … + (1 + 2 + 3 + … + n)
编写程序,计算下列公式中s的值(n是运行程序时输入的一个正整数)。
s =1 + (1 + 2) + (1 + 2 + 3) + … + (1 + 2 + 3 + … + n)
s,m,ss=0,1,0
n=int(input(“请输入一个正整数:”))
while m<=n:
s=s+m
m=m+1
ss=s+ss
print(ss)
3.8 枚举法:“百马百瓦问题”
有100匹马驮100块瓦,大马驮3块,小马驮2块,两个马驹驮1块。问大马、小马、马驹各有多少匹?
思路:用嵌套循环来做,要注意前后两个条件的关系,以及两个马驹托一个瓦的条件。
for i in range(34):
for j in range(51):
k=100-i-j
if 3i+2j+k/2100 and k%20 :
print(“大马有:”,i,“小马有:”,j,“马驹有:”,k)
3.9 斐波那契函数问题
有一个数列,其前三项分别为1、2、3,从第四项开始,每项均为其相邻的前三项之和的1/2,问:该数列从第几项开始,其数值超过1200。
lst=[1,2,3]
for i in range(100):#建立一个i到100的for循环
if i>2: #到第三项时候 推出第四项
x=(lst[i-1]+lst[i-2]+lst[i-3])/2
lst.append(x)#将第四项添加到列表末尾
if x>1200:#内部判断那一项大于1200的时候跳出循环
print(i)
break
3.10 找出1与100之间的全部“同构数”。
“同构数”是这样一种数,它出现在它的平方数的右端。例如,5的平方是25,5是25中右端的数,5就是同构数,25也是一个同构数,它的平方是625。
**解:**只要是和100取余,则会剩下个位和十位
for i in range(1,101):
x=i*i
if i<10:
if x%10i:
print(i)
elif i<100:
if x%100i:
print(i)