146 lines
4.2 KiB
Python
146 lines
4.2 KiB
Python
# 练习 1:猜数字游戏(使用 break)
|
||
# 要求: 让用户猜一个数字(1-10 之间),如果猜对了,就使用 break 结束循环。
|
||
import random
|
||
|
||
secret_number = random.randint(1, 10)
|
||
|
||
while True:
|
||
guess = int(input("猜一个 1 到 10 之间的数字: "))
|
||
|
||
if guess == secret_number:
|
||
print("恭喜,你猜对了!")
|
||
break # 终止循环
|
||
else:
|
||
print("猜错了,继续猜!")
|
||
|
||
# 练习 2:跳过偶数(使用 continue)
|
||
# 要求: 只打印 1 到 10 之间的奇数,跳过偶数。
|
||
num = 0
|
||
|
||
while num < 10:
|
||
num += 1
|
||
if num % 2 == 0: # 如果是偶数
|
||
continue # 跳过本次循环,进入下一次
|
||
print(num)
|
||
|
||
# 练习 3:限制输入次数(使用 break 和 continue)
|
||
# 要求: 用户最多有 3 次机会输入密码,输入正确后结束,否则继续输入。如果输入为空,则提示“密码不能为空”并跳过本次输入。
|
||
correct_password = "123456"
|
||
attempts = 3
|
||
|
||
while attempts > 0:
|
||
password = input("请输入密码: ")
|
||
|
||
if password == "":
|
||
print("密码不能为空!")
|
||
continue # 直接跳到下一次循环
|
||
|
||
if password == correct_password:
|
||
print("密码正确,欢迎进入系统!")
|
||
break # 终止循环
|
||
else:
|
||
attempts -= 1
|
||
print(f"密码错误,你还有 {attempts} 次机会")
|
||
|
||
if attempts == 0:
|
||
print("你的账号已被锁定!")
|
||
|
||
# 练习 4:寻找第一个能被 7 整除的数字
|
||
# 要求: 从 1 开始计数,找到第一个能被 7 整除的数字后停止。
|
||
num = 1
|
||
|
||
while True:
|
||
if num % 7 == 0:
|
||
print(f"找到第一个能被 7 整除的数字:{num}")
|
||
break # 找到后直接退出循环
|
||
num += 1
|
||
|
||
# 练习 5:用户登录(使用 break 和 continue)
|
||
# 要求: 用户最多可以输入 3 次密码,正确则退出,输入为空则提示“密码不能为空”并跳过本次输入。
|
||
correct_password = "admin123"
|
||
attempts = 3
|
||
|
||
while attempts > 0:
|
||
password = input("请输入密码: ")
|
||
|
||
if password == "":
|
||
print("⚠️ 密码不能为空!")
|
||
continue
|
||
|
||
if password == correct_password:
|
||
print("✅ 密码正确,登录成功!")
|
||
break
|
||
else:
|
||
attempts -= 1
|
||
print(f"❌ 密码错误,你还有 {attempts} 次机会")
|
||
|
||
if attempts == 0:
|
||
print("🔒 账号已被锁定!")
|
||
|
||
# 练习 6:打印 1-50 内第一个能被 7 和 9 同时整除的数
|
||
# 要求: 找到第一个能同时被 7 和 9 整除的数,找到后 break 退出。
|
||
num = 1
|
||
|
||
while num <= 50:
|
||
if num % 7 == 0 and num % 9 == 0:
|
||
print(f"🎯 找到:{num}")
|
||
break
|
||
num += 1
|
||
|
||
# 练习 7:跳过数字 5(使用 continue)
|
||
# 要求: 1 到 10 之间的数字,但 跳过 5。
|
||
num = 0
|
||
|
||
while num < 10:
|
||
num += 1
|
||
if num == 5:
|
||
continue # 跳过 5
|
||
print(num)
|
||
|
||
# 练习 8:计算 1-100 之间的奇数和(使用 continue)
|
||
# 要求: 计算 1 到 100 之间所有奇数的总和。
|
||
num = 0
|
||
total = 0
|
||
|
||
while num <= 100:
|
||
num += 1
|
||
if num % 2 == 0:
|
||
continue # 跳过偶数
|
||
total += num
|
||
|
||
print(f"所有奇数的和是: {total}")
|
||
|
||
# 练习 9:找出 1-100 内所有能被 3 整除的数
|
||
# 要求: 1-100 之间,找到所有能被 3 整除的数字,并打印。
|
||
num = 1
|
||
|
||
while num <= 100:
|
||
if num % 3 != 0:
|
||
num += 1
|
||
continue # 跳过不能被 3 整除的数
|
||
print(num)
|
||
num += 1
|
||
|
||
# 练习 10:银行取款系统
|
||
# 要求: 余额为 5000 元,用户可以不断输入取款金额,直到余额不足或用户输入 0 退出。
|
||
balance = 5000
|
||
while balance > 0:
|
||
amount = int(input(f"💰 你当前余额为 {balance},请输入取款金额(输入 0 退出):"))
|
||
if amount == 0:
|
||
print("👋 交易结束!")
|
||
break
|
||
if amount > balance:
|
||
print("⚠️ 余额不足!")
|
||
continue # 重新输入金额
|
||
balance -= amount
|
||
print(f"✅ 取款成功,剩余余额: {balance}")
|
||
|
||
# 练习 11:倒计时(使用 break)
|
||
# 要求: 倒计时 10 秒,当计数到 3 时,立即结束。
|
||
num = 10
|
||
while num > 0:
|
||
print(f"倒计时: {num} 秒")
|
||
num -= 1
|
||
if num == 3:
|
||
print("🚀 倒计时提前终止!")
|
||
break |