用python输入若干个百分制成绩,当输入-1时表示输入结束,计算并输出平均成绩。当输入的不是百分制成绩(小于0或大于100)则视为无效成绩,不计入在内;假定有效成绩个数大于0。
时间: 2023-09-06 09:05:06 浏览: 1611
### 回答1:
以下是用 Python 实现上述功能的代码示例:
```
scores = [] # 创建一个空列表用于存储输入的成绩
while True:
score = int(input("请输入百分制成绩:")) # 输入成绩
if score == -1: # 如果输入的是 -1,则退出循环
break
if 0 <= score <= 100: # 如果输入的是有效成绩(即 0~100 之间的数),则将其加入列表
scores.append(score)
if len(scores) > 0: # 如果有效成绩的个数大于 0
average = sum(scores) / len(scores) # 计算平均成绩
print("平均成绩为:", average)
else: # 如果有效成绩的个数等于 0
print("没有输入有效成绩!")
```
在这段代码中,我们使用了一个死循环来不断输入成绩。每次输入后,我们判断输入的值是否为 -1,如果是,则退出循环。如果输入的值在 0~100 之间,则将其加入列表。最后,如果有效成绩的个数大于 0,则计算平均成绩,否则提示没有输入有效成绩。
### 回答2:
可以使用以下代码来实现输入百分制成绩并计算平均成绩的功能:
```python
sum = 0 # 存储成绩总和
count = 0 # 记录有效成绩个数
while True:
score = int(input("请输入百分制成绩(输入-1结束):"))
if score == -1: # 输入-1表示结束
break
if score < 0 or score > 100: # 非百分制成绩,跳过
continue
sum += score
count += 1
average = sum / count
print(f"平均成绩为:{average}")
```
运行以上代码后,程序会要求输入百分制成绩,当输入-1时表示输入结束。在接受到合法的百分制成绩时,将其加入到总成绩的sum变量中,并且有效成绩个数count加1。在输入结束后,通过计算sum / count得到平均成绩,并打印输出结果。
### 回答3:
题目要求通过Python编写程序实现输入若干个百分制成绩,并在输入-1时表示输入结束。然后计算并输出平均成绩。对于不符合百分制成绩要求的输入(小于0或大于100),则视为无效成绩,不计入平均成绩。假设输入的有效成绩个数大于0。
可以按照以下步骤编写代码:
1. 初始化变量sum和count,分别表示成绩总和和有效成绩个数。
2. 进入循环,每次从用户输入读取一个成绩。
3. 判断成绩是否为-1,如果是,则跳出循环。
4. 判断成绩是否有效,即是否在0到100之间。如果无效,继续下一次循环。
5. 如果成绩有效,将成绩加入总和sum中,有效成绩个数count加1。
6. 重复步骤2到步骤5,直到用户输入-1结束循环。
7. 计算平均成绩,即总和sum除以有效成绩个数count。
8. 输出平均成绩。
以下是代码实现:
```python
sum = 0 # 成绩总和
count = 0 # 有效成绩个数
while True:
score = int(input("请输入一个百分制成绩(输入-1结束):"))
if score == -1:
break
if score < 0 or score > 100:
continue
sum += score
count += 1
if count > 0:
average_score = sum / count
print("平均成绩为:", average_score)
else:
print("没有有效成绩")
```
运行程序后,依次输入若干个百分制成绩,输入-1时程序会停止输入,并计算并输出平均成绩。无效成绩会被忽略不计入平均成绩。如果没有输入有效成绩,则输出"没有有效成绩"。
阅读全文