有一个班4个学生,5门课程。 (1)求第一门课程的平均分。 (2)找出有2门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩。 (3)找出平均成绩在90分以上或全部成绩在85分以上的学生。分别编3个函数实现以上3个要求。
时间: 2023-05-10 19:55:59 浏览: 170
有n个学生,每人有m门课程的分数,要求: (1)找出总分最高的学生号; (2)找出至少有一门课分数不及格的学生号并输出其所有分数; (3)统计每门分数都在85分
1. 求第一门课程的平均分:
```python
def avg_first_course(scores):
first_course_scores = [score[0] for score in scores]
avg_score = sum(first_course_scores) / len(first_course_scores)
return avg_score
```
2. 找出有2门以上课程不及格的学生,输出他们的学号和全部课程成绩及平均成绩:
```python
def find_failed_students(scores):
failed_students = []
for i, score in enumerate(scores):
num_failed_courses = sum([1 for s in score if s < 60])
if num_failed_courses >= 2:
avg_score = sum(score) / len(score)
failed_students.append((i+1, score, avg_score))
return failed_students
```
3. 找出平均成绩在90分以上或全部成绩在85分以上的学生:
```python
def find_excellent_students(scores):
excellent_students = []
for i, score in enumerate(scores):
avg_score = sum(score) / len(score)
if avg_score >= 90 or all(s >= 85 for s in score):
excellent_students.append((i+1, score, avg_score))
return excellent_students
```
注意:以上代码只是示例,实际应用中需要根据具体情况进行调整和优化。
阅读全文