发布时间:2022-08-19 11:32
在练习之前,可以先熟悉一下两种循环结果已经特点:
1.while循环语句:
初始化语句
while 条件表达式:
循环体
While是死循环,如果不给出跳出语句,就会一直循环;While循环常用于做未知循环次数的循环时,使用while循环
while循环通过一个能够产生或转换出bool值的表达式来控制循环,表达式的值为True则继续循环;表达式的值为False则结束循环。
2.for循环语句:
for 迭代变量 in 对象:
循环体
for循环是一个依次重复执行的循环,通常用于枚举和遍历序列,for循环也可以了用来遍历字符串。
rang(start,end,step):
Start:开始值可以省略,左闭右开
End:结束值,
Step:步长
range(101):可以用来产生0到100范围的整数,需要注意的是取不到101。
range(1, 101):可以用来产生1到100范围的整数,相当于前面是闭区间后面是开区间。
range(1, 101, 2):可以用来产生1到100的奇数,其中2是步长,即每次数值递增的值。
range(100, 0, -2):可以用来产生100到1的偶数,其中 - 2是步长,即每次数字递减的值。
接下来就是循环语句的练习题:
1.求4+44+444+4444的和
n = 4 # 定义制定初始值
k = 0 # 定义总和
m = 0 # 定义变量
for i in range(4):
m += n10**i # 根据数据规则循环出这四个值
k += m # 进行求和
print(k)
方式2:
n=4
s=0
he=0
for i in range(4):
# s += n #求和
# n=n10+4 #规律
s += n*10**i #规律
he += s #求和
# print(s)
print(he)
2.2006年培养学员8万人,每年增长25%,请问按此增长速度,到哪一年培训学员人数将达到20万人?
a = 8 # 定义学员为a
b = 2006 # 定义年份为b
while a <= 20: # 循环条件为学员小于20万
a *= 1.25 # 根据增长率算出总学员
b += 1 # 每年增长
print(b)
3.请用户输入数字,直到输入0退出,最后求和,
a = 0 # 定义和
b = 1 # 定义输入的值
while b!=0: # 循环条件,输入的值不为0
b = float(input(‘请输入数字:’)) # 键盘输入值
a += b # 求和
print(‘输入的数字之和为:’,a)
4.输入班级学生语文成绩,求总成绩和平均成绩。班级人数从键盘输入
num = int(input(‘请输入班级人数:’)) # 定义班级人数
avge = 0 # 定义平均值
count = 0 # 定义总分数
for i in range(num):
i = float(input(‘请输入学生语文成绩:’)) # 循环输入学生的成绩
count += i # 计算总分数
avge = count / num # 成绩平均值为总分数除以学生人数
print(‘班级平均语文成绩为:’, round(avge, 2)) # 对平均值保留两位小数
5.循环输入7天温度,求平均温度
cuma =0 # 定义温度总和
avga = 0 # 定义平均值
for i in range(1,8): # 输入温度循环7次
i = float(input(‘请输入温度:’)) # 对输入的温度强制转换为浮点型
cuma += i # 求输入的温度总和
avga = cuma/7 # 求温度的平均值
print(‘这七天的平均温度为’,round(avga,2))
6.求100-200以内同时能被7,8整除的数
for i in range(100, 201):
if i % 7 == 0 and i % 8 == 0:
print(i)
7.1-100以内含有6的数
for x in range(1,101):
y = str(x) # 将遍历的数值转换成字符串类型,赋值给y
# if y.find(“6”) >= 0: # 在遍历出来字符串中找到含有6的数
if(‘6’ in y):
print(x)