2、有若干个学生,每个学生含有学号,姓名,成绩,程序要求:编写一个inputdata函数用于输入N个学生的数据,编写一个outputdata函数用于输出N个学生的数据,编写一个avgdata函数用于计算且输出N个学生的平均成绩。
时间: 2023-06-11 19:10:15 浏览: 90
好的,下面是代码实现:
```python
class Student:
def __init__(self, num, name, score):
self.num = num
self.name = name
self.score = score
def inputdata():
n = int(input("请输入学生人数:"))
students = []
for i in range(n):
num = input("请输入学号:")
name = input("请输入姓名:")
score = float(input("请输入成绩:"))
student = Student(num, name, score)
students.append(student)
return students
def outputdata(students):
for student in students:
print("学号:{0},姓名:{1},成绩:{2}".format(student.num, student.name, student.score))
def avgdata(students):
total_score = 0
for student in students:
total_score += student.score
avg_score = total_score / len(students)
print("平均成绩为:{0}".format(avg_score))
students = inputdata()
outputdata(students)
avgdata(students)
```
这里我们定义了一个`Student`类,其中包含学号、姓名和成绩三个属性。然后分别定义了`inputdata`、`outputdata`和`avgdata`三个函数用于输入、输出和计算平均成绩。在`inputdata`函数中,我们首先输入学生人数,然后用循环逐个输入每个学生的信息,并将其存储在一个列表中返回。在`outputdata`函数中,我们遍历学生列表,并输出每个学生的学号、姓名和成绩。在`avgdata`函数中,我们遍历学生列表,计算总成绩,并求出平均成绩后输出。最后,在主函数中依次调用这三个函数即可。
阅读全文