Python题输入一个班的学生成绩,打印平均分,以及高于平均分的学生成绩。
时间: 2024-04-27 18:04:34 浏览: 156
好的,这个问题可以回答。以下是Python代码示例:
```python
scores = input("请输入学生成绩,以空格分隔:").split()
scores = [int(score) for score in scores]
average_score = sum(scores) / len(scores)
print(f"平均分为:{average_score:.2f}")
above_average_scores = [score for score in scores if score > average_score]
print("高于平均分的学生成绩为:", end="")
for score in above_average_scores:
print(score, end=" ")
```
样例输入:
```
90 80 95 85 92
```
样例输出:
```
平均分为:88.40
高于平均分的学生成绩为:90 95 92
```
相关问题
python 输入一个班的学生成绩,打印平均分,以及高于平均分的学生成绩
在Python中,你可以使用列表存储学生的成绩,然后计算总分、平均分,接着遍历列表找出高于平均分的成绩。下面是一个简单的示例:
```python
def calculate_average(scores):
return sum(scores) / len(scores)
def print_students_above_average(scores, average):
above_average = [score for score in scores if score > average]
return above_average
# 获取学生成绩输入
scores = []
while True:
score = input("请输入一个学生的分数(输入'q'结束): ")
if score.lower() == 'q':
break
else:
try:
score = float(score)
scores.append(score)
except ValueError:
print("无效输入,需要一个数字.")
if scores: # 检查是否有输入
average_score = calculate_average(scores)
print(f"班级平均分: {average_score}")
above_average_scores = print_students_above_average(scores, average_score)
if above_average_scores:
print(f"高于平均分的学生成绩有: {above_average_scores}")
else:
print("没有学生得分高于平均分.")
else:
print("未收到任何成绩,请重新输入。")
```
这个程序首先定义了两个辅助函数:`calculate_average`用于计算平均分,`print_students_above_average`用于筛选出高于平均分的成绩。然后,通过循环收集用户的输入,将其添加到`scores`列表中。最后,检查列表是否为空,如果不为空则计算平均分并找出高于平均分的学生成绩。
用python输入一个班的学生成绩,打印平均分,以及高于平均分的学生成绩,成绩可以包含一位小数
好的,这是一个关于编程的问题。下面是Python的代码来满足您的需求:
```
scores = input("请输入学生成绩,用空格隔开:") # 输入学生成绩
scores_list = scores.split() # 将输入的字符串转换为列表
scores_float = [float(x) for x in scores_list] # 将列表中的字符串转换为浮点数
avg_score = sum(scores_float) / len(scores_float) # 计算平均分
above_avg_score = [x for x in scores_float if x > avg_score] # 找出高于平均分的成绩
print("平均分为:{:.1f}".format(avg_score))
print("高于平均分的成绩为:", above_avg_score)
```
希望这能帮助您!
阅读全文