羽毛球

def simulate_badminton_match():
"""模拟羽毛球比赛,三局两胜制"""
player_a_wins = 0
player_b_wins = 0
current_server = 'A' # 第一局默认A先发球

三局两胜

while player_a_wins < 2 and player_b_wins < 2:
print(f"\n=== 第{player_a_wins + player_b_wins + 1}局开始 ===")
print(f"当前发球方: 选手{current_server}")

初始化本局分数

score_a = 0
score_b = 0

模拟本局比赛

while True:
# 输入得分方
while True:
winner = input("请输入得分选手 (A/B),或输入Q退出: ").upper()
if winner in ['A', 'B', 'Q']:
break
print("输入无效,请重新输入!")

if winner == 'Q':
print("比赛已取消")
return

更新分数

if winner == 'A':
score_a += 1
else:
score_b += 1

打印当前比分

print(f"当前比分: 选手A {score_a} - {score_b} 选手B")

判断是否结束本局

if (score_a >= 21 or score_b >= 21) and abs(score_a - score_b) >= 2:
break
elif score_a >= 30 or score_b >= 30:
break

确定本局胜者

if score_a > score_b:
print(f"第{player_a_wins + player_b_wins + 1}局结束: 选手A胜")
player_a_wins += 1
current_server = 'A' # 胜方下局先发球
else:
print(f"第{player_a_wins + player_b_wins + 1}局结束: 选手B胜")
player_b_wins += 1
current_server = 'B' # 胜方下局先发球

打印当前赛果

print(f"当前赛果: 选手A {player_a_wins} - {player_b_wins} 选手B")

确定最终胜者

if player_a_wins > player_b_wins:
print("\n=== 比赛结束 =")
print("最终胜者: 选手A")
else:
print("\n
= 比赛结束 ===")
print("最终胜者: 选手B")

启动比赛模拟

simulate_badminton_match()

posted @ 2025-06-21 18:34  Neflibata。  阅读(44)  评论(0)    收藏  举报