简答题 编写一个学生和教师数据输入和显示程序,学生数据有编号、姓名、班号、语文成绩、英语成绩、数学成绩,教师数据有编号、姓名、职称和部门。写一个学生类Student,老师类Teacher,老师录入学生成绩,统计输出该同学的平均成绩。
时间: 2024-04-07 20:29:26 浏览: 199
编写一个学生和教师数据输入和显示程序
下面是一个简单的学生和教师数据输入和显示程序的实现,其中包含学生类Student和教师类Teacher,以及一个简单的测试程序:
```python
class Student:
def __init__(self, id, name, class_id, chinese_score, english_score, math_score):
self.id = id
self.name = name
self.class_id = class_id
self.chinese_score = chinese_score
self.english_score = english_score
self.math_score = math_score
def average_score(self):
return (self.chinese_score + self.english_score + self.math_score) / 3
class Teacher:
def __init__(self, id, name, title, department):
self.id = id
self.name = name
self.title = title
self.department = department
def input_score(self, student, chinese_score, english_score, math_score):
student.chinese_score = chinese_score
student.english_score = english_score
student.math_score = math_score
def display_student(self, student):
print("学生信息:")
print("编号:", student.id)
print("姓名:", student.name)
print("班号:", student.class_id)
print("语文成绩:", student.chinese_score)
print("英语成绩:", student.english_score)
print("数学成绩:", student.math_score)
print("平均成绩:", student.average_score())
def main():
teacher = Teacher(1, "张老师", "教授", "计算机科学与技术")
student = Student(1, "小明", "1班", 80, 90, 85)
teacher.input_score(student, 90, 85, 95)
teacher.display_student(student)
if __name__ == "__main__":
main()
```
运行结果:
```
学生信息:
编号: 1
姓名: 小明
班号: 1班
语文成绩: 90
英语成绩: 85
数学成绩: 95
平均成绩: 90.0
```
在上述程序中,我们定义了一个Student类来表示学生,包含了学生的各项信息,并且定义了一个方法average_score来计算学生的平均成绩。另外还定义了一个Teacher类来表示老师,包含了老师的各项信息,并且定义了两个方法input_score和display_student,分别用于输入学生成绩和显示学生信息。在main函数中,我们创建了一个Teacher对象和一个Student对象,并且调用了Teacher对象的input_score方法来输入学生的成绩,最后调用了Teacher对象的display_student方法来显示学生的信息。
阅读全文