while循环
格式:
while 判断条件: (boolean)
循环体
break 停止当前循环
break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
break语句用在while和for循环中。
如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
continue 跳出本次循环
Python continue 语句跳出本次循环,而break跳出整个循环。s
continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。
continue语句用在while和for循环中。
1.求1-100偶数的和
n=1
sum=0 #任何时候都必须先声明变量
while n<=100:
if n%2==0:
sum+=n
n=n+1
print(sum) #输出结果为2550
2.请用户输入数字,求和,直到输出0时退出
sum=0
while True:
n= int(input('请输入一个数字:'))
if n==0:
break
sum+=n
print(sum)
3. 1-100之间,遇到3和5的倍数输出当前值+是3和5的倍数;遇到5的倍数输出当前值+是五的倍数;遇到3的倍数输出当前值+是三的倍数.
n=1
sum=0
while n<=100:
if n%3==0 and n%5==0:
print(n,'是三和五的倍数')
elif n%5==0:
print(n, '是五的倍数')
elif n%3==0:
print(n, '是三的倍数')
n=n+1
else:
print('循环结束')
# range()函数不包含结尾参数
nums=range(5)
for i in range(-2,50,2):
print(i)
4.输出一行9个*2.输出9行9个*
for i in range(9): #9行9个*
for i in range(9): #一行9个*
print('*',end='') #end='' 换行
print()
5.输出直角三角形
for i in range(1,9):
for i in range(i):
print('*',end='')
print()
6.输出九九乘法表
for i in range(1,10):
for n in range(1,i+1):
print(n,'*',i,'=',(i*n),end='\t',) #\t 制表符
print ()
7.等腰三角形和菱形
rows=int(input('请输入菱形的行数:'))
for i in range(rows):
for j in range(rows-1,i,-1):
print(' ',end="") #*前的空白
for k in range(i*2+1):
print('*',end='') #构成菱形的*
print() #上半部分
for i in range(1,rows-1+1): #下半部分
for j in range(i): #i取(1,rows) 因为下半部比上半部少一行,所有从1开始
print(" ",end='')
for k in range((rows-i)*2-1): #取((rows-i)*2-1) -1是因为下半部比上半部少一行,(rows-i)*2则是每行*数
print('*',end='')
print()
8.请用户输入成绩, 统计各区间的人数 超出0-100 重新输入 正确 询问是否继续
a=b=c=d=0
while True:
num=int(input('请输入成绩:'))
if num>=90 and num<=100:
a+=1
elif num>=80 and num<=90:
b+=1
elif num>=60 and num<=80:
c+=1
elif num>=0 and num<=60:
d+=1
else:
print("超出范围 请重新输入!")
continue #放回到循环条件判断位置 必须在循环体中
str=input('是否继续? y/n')
if str.__eq__('n'): #__eq__ 类 == 及str的值是否为n,是则break,结束整个循环
break
print('>=90',a)
print('>=80',b)
print('>=60',c)
print('>=0',d)
9.统计3个班级中每个班级3个学生的成绩:大于80有多少人
aa=0
for i in range(1,4): #(1,4) 三个班
print('请输入',i,'个班的成绩:')
for j in range(1,4): #(1,4) 每个班3个学生
ab=int(input('请输入'+str(j)+'个班的成绩:'))
if ab<0:
print('输入负数,进入下一班级')
break #break结束并返回到for i in range(1,4):循环中
if ab<80:
continue #continue 结束的当前循环 并执行aa+=1
aa+=1
print("大于80的人数:",aa)