用java写:有34个学生,每个学生有姓名、5门成绩;计算每个学生的平均分、总分,并且按总分降序输出(姓名、总分、平均分)
时间: 2024-09-25 07:08:01 浏览: 31
编写学生成绩单程序 由于计算和显示5个学科的总分和平均分;
在Java中,我们可以创建一个`Student`类来表示学生的信息,并包含姓名和五门成绩。然后,我们可以创建一个`ScoreCalculator`类来处理计算平均分、总分和排序操作。下面是一个简单的示例:
```java
import java.util.*;
class Student {
String name;
int[] scores = new int[5]; // 五门成绩
public Student(String name, int... scores) {
this.name = name;
this.scores = scores;
}
double calculateAverage() {
double sum = 0;
for (int score : scores) {
sum += score;
}
return sum / scores.length;
}
int calculateTotal() {
return Arrays.stream(scores).sum();
}
}
class ScoreCalculator {
public static void main(String[] args) {
List<Student> students = new ArrayList<>();
// 添加34名学生数据,这里简化成只有一个样例
students.add(new Student("张三", 85, 90, 78, 92, 88));
Collections.sort(students, Comparator.comparingInt(Student::calculateTotal)
.reversed()); // 按总分降序排序
for (Student student : students) {
System.out.println("姓名:" + student.name + " 总分:" + student.calculateTotal()
+ " 平均分:" + student.calculateAverage());
}
}
}
阅读全文