Python动态录入学生成绩,并求所有成绩的平均分、最高分、最低分。每输入一个成绩后询问是否继续输入下一个成绩,回答yes就继续输入下一个成绩,回答no则停止输入成绩。停止录入成绩之后,按顺序输出以上全部成绩,并计算平均成绩、最高、最低成绩。
时间: 2023-12-03 15:42:57 浏览: 24
可以使用如下代码实现:
```python
scores = []
while True:
score = input("请输入学生成绩:")
scores.append(float(score))
choice = input("是否继续输入下一个成绩?(yes/no)")
if choice.lower() == "no":
break
avg_score = sum(scores) / len(scores)
max_score = max(scores)
min_score = min(scores)
print("所有成绩如下:")
for score in scores:
print(score)
print("平均分为:", avg_score)
print("最高分为:", max_score)
print("最低分为:", min_score)
```
运行结果如下所示:
```
请输入学生成绩:90
是否继续输入下一个成绩?(yes/no)yes
请输入学生成绩:80
是否继续输入下一个成绩?(yes/no)yes
请输入学生成绩:85
是否继续输入下一个成绩?(yes/no)no
所有成绩如下:
90.0
80.0
85.0
平均分为: 85.0
最高分为: 90.0
最低分为: 80.0
```
相关问题
python实现在某次考试后录入某班学生的成绩不同班级学生人数不固定最后统计该班平均分最高分和最低分
可以使用Python的列表和循环来实现这个功能。首先,你需要询问输入哪个班级的学生成绩,以及该班级有多少名学生。接着,你需要使用循环来逐个录入学生的成绩,并且计算出该班级的平均分,最高分和最低分。下面是一个示例代码:
```python
# 初始化最高分和最低分为0
highest_grade = 0
lowest_grade = 100
# 询问输入哪个班级的学生成绩
class_name = input("请输入班级名称:")
# 询问该班级有多少名学生
num_students = int(input("请输入学生人数:"))
# 初始化总成绩为0
total_grade = 0
# 循环录入每位学生的成绩
for i in range(num_students):
grade = float(input("请输入第 {} 位学生的成绩:".format(i+1)))
total_grade += grade
# 检查最高分和最低分
if grade > highest_grade:
highest_grade = grade
if grade < lowest_grade:
lowest_grade = grade
# 计算平均分
average_grade = total_grade / num_students
# 输出结果
print("{}班级的平均分为 {:.2f},最高分为 {:.2f},最低分为 {:.2f}。".format(class_name, average_grade, highest_grade, lowest_grade))
```
这段代码会先询问班级名称和学生人数,然后逐个录入每位学生的成绩,并且计算出该班级的平均分、最高分和最低分。最后,它会输出结果。
Python 编写程序实现在某次考试后录入某班学生的成绩,不同班级学生人数不固定,最后统计该班级的平均分、最高分和最低分
好的,我可以为您提供这样一个 Python 程序的框架,您可以根据自己的需求进行修改:
```python
class Student:
def __init__(self, name, score):
self.name = name
self.score = score
class Class:
def __init__(self):
self.students = []
def add_student(self, name, score):
student = Student(name, score)
self.students.append(student)
def get_average_score(self):
sum_score = 0
for student in self.students:
sum_score += student.score
return sum_score / len(self.students)
def get_max_score(self):
max_score = 0
for student in self.students:
if student.score > max_score:
max_score = student.score
return max_score
def get_min_score(self):
min_score = float('inf')
for student in self.students:
if student.score < min_score:
min_score = student.score
return min_score
# 示例用法
c = Class()
c.add_student('张三', 80)
c.add_student('李四', 90)
c.add_student('王五', 70)
print(c.get_average_score()) # 80.0
print(c.get_max_score()) # 90
print(c.get_min_score()) # 70
```
这个程序包括两个类:`Student` 和 `Class`。`Student` 类表示一个学生,包含学生的姓名和成绩两个属性;`Class` 类表示一个班级,包含学生列表和计算平均分、最高分、最低分三个方法。
在 `Class` 类中,`add_student` 方法用于添加一个学生;`get_average_score` 方法用于计算平均分;`get_max_score` 和 `get_min_score` 方法分别用于计算最高分和最低分。
在示例用法中,首先创建了一个 `Class` 对象,然后添加了三个学生,最后分别调用了计算平均分、最高分、最低分的方法,并将结果输出到屏幕上。
相关推荐
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)