赞
踩
- 练习案例:求1-100的和
- 需求:通过while循环,计算从1累加到100的和
- 提示:
- 1.终止条件不要忘,设置为确保while循环100次
- 2.确保累加的数字,从1开始,到100结束
- i=1
- y=0
- while i<=100:
- y+=i
- i+=1
- print(f"1-100累加的和是:{y}")
运行:

- 猜数字案例:
- 设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数。
- 1.无限次机会,直到猜中为止
- 2.每一次猜不中,会提示大了或小了
- 3.猜完数字后,提示猜了几次
- 提示:
- 1.无限次机会,终止条件不适合用数字累加来判断
- 可以考虑布尔类型本身(True or False)
- 2.需要提示几次猜中,就需要提供数字累加功能
- 3.随机数可以使用:import random
- num = random.randint(1,100)
- #获取1-100的随机数字
- import random
- num = random.randint(1,100)
- #定义一个变量,记录总共猜测了几次
- count = 0
- #通过一个布尔类型的变量,做循环是否继续的标记
- flag = True
- while flag:
- guess_num=int(input("请输入你猜测的数字:"))
- count += 1
- if guess_num == num:
- print("猜对了")
- #设置为false就是终止循环的条件
- flag = False
- else:
- if guess_num > num:
- print("你猜的大了")
- else:
- print("你猜的小了")
-
- print(f"你总共猜了:{count}次")

运行:
- 练习案例:打印九九乘法表
- 1.控制行的循环 i<=9
- 2.控制每一行输出的循环 j<=i
- #定义外层循环的控制变量
- i = 1
- while i <= 9:
-
- #定义内层循环的控制变量
- j = 1
- while j <= i:
- #内层循环的print语句,不要换号,通过\t制表符进行对齐
- print(f"{j} * {i} = {i * j}\t",end='')
- j += 1
-
- i += 1
- print() #print空内容,就是输出一个换行
运行:

- 练习案例:数一数有几个a
- 定义字符串变量name,内容为:“nianxi is a beautiful girl”
- 通过for循环,遍历此字符串,统计有多少个英文字母:“a”
- 提示:
- 1.计数可以在循环外定义一个整数类型变量用来做累加计数
- 2.判断是否为字母“a”,可以通过if语句结合比较运算符来完成
- name = "nianxi is a beautiful girl"
- i = 0
-
- for j in name:
- if j == 'a':
- i += 1
-
- print(f"nianxi is a beautiful girl中共有:{i}个字母a")
运行:

- 练习案例:有几个偶数
- 定义一个数字变量num,内容随意
- 并使用range()语句,获取从1到num的序列,使用for循环遍历它。
- 在遍历的过程中,统计有多少偶数出现。
- 提示:
- 1.序列可以使用:range(1,num)得到
- 2.偶数通过if来判断,判断数字余2是否为0即可
- i=0
- for x in range(1,100):
- if x % 2 == 0:
- i+=1
- print(f"1到100(不含100本身)范围内,有{i}个偶数")
运行:

练习案例:for循环打印九九乘法表
- for i in range(1,10):
- for j in range(1,i+1):
- print(f"{j}*{i}={j*i}\t",end='')
- print()
运行:

- 练习案例:发工资
- 某公司,账户余额有1W元,给20名员工发工资。
- 1.员工编号从1到20,从编号1开始,依次领取工资,每人可领1000元
- 2.领工资时,财务判断员工的绩效分(1-10)(随机生成),如果低于5,不发工资,换下一位
- 3.如果工资发完了,结束发工资
- 提示:
- 1.使用循环对员工依次发放工资
- 2.continue用于跳过员工,break直接结束发工资
- 3.随机数可以用improt random
- num = random.randint(1,10)
- import random
- sum = 10000
- for i in range(1 , 21):
- score = random.randint(1, 10)
- if score < 5:
- print(f"员工{i},绩效分{score},低于5,不发工资,下一位。")
- continue
- sum -= 1000
- print(f"向员工{i}发放工资1000元,账户余额还剩余{sum}元")
- if sum == 0:
- break
- print("工资发完了,下个月领取吧。")
运行:

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。