用户输入若干个分数求所有分数的平均分每输入一个分数后询问是否继续输入下一个分数,回答“y”、“n”之外的字符就提示只能输入y或n并继续询问是否输入下一个分数,回答“y”就继续输入下一个分数,回答“n”就停止输入,结束程序
时间: 2023-10-08 22:10:58 浏览: 127
好的,您的问题是如何用Python实现这个功能。以下是程序的实现:
```python
sum = 0
count = 0
while True:
score = input("请输入一个分数:")
if score.isdigit():
sum += float(score)
count += 1
else:
print("请输入合法的数字!")
continue
answer = input("是否继续输入下一个分数?(y/n)")
while answer != 'y' and answer != 'n':
print("只能输入 y 或 n,请重新输入!")
answer = input("是否继续输入下一个分数?(y/n)")
if answer == 'n':
break
if count == 0:
print("您没有输入任何分数!")
else:
print("所有分数的平均分为:{:.2f}".format(sum/count))
```
程序首先定义了两个变量`sum`和`count`,分别用来存储输入的分数总和和分数个数。然后进入一个无限循环,每次循环中先询问用户输入一个分数,如果输入的是数字,则将其转化为浮点数并加到`sum`中,同时将`count`加一;否则提示用户输入合法的数字并重新开始循环。接着程序会询问用户是否继续输入下一个分数,如果回答的不是`y`或`n`,则提示用户重新输入,直到回答为`y`或`n`。如果回答为`n`,则跳出循环,计算所有分数的平均分并输出结果。如果用户没有输入任何分数,则输出提示信息。