Java,有5个学生的数据包括学号,班级,姓名,三门成绩。从键盘输入5个学生数据,要求打印出每个学生三门课的平均成绩,以及平均分最高分学生的所有数据。
时间: 2024-12-11 13:26:48 浏览: 47
在Java中,我们可以创建一个学生类(Student),包含学号、班级、姓名和成绩属性,然后使用ArrayList来存储五个学生的数据。以下是实现这个功能的一个简单示例:
```java
import java.util.ArrayList;
import java.util.Scanner;
class Student {
String id;
String classNum;
String name;
double score1;
double score2;
double score3;
// 构造函数和getter/setter省略...
// 计算平均分
double calculateAverageScore() {
return (score1 + score2 + score3) / 3;
}
}
public class Main {
public static void main(String[] args) {
ArrayList<Student> students = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
System.out.println("请输入第" + (i+1) + "名学生的信息:");
Student student = new Student();
student.id = scanner.next();
student.classNum = scanner.next();
student.name = scanner.next();
// 假设成绩是以逗号分隔的三个数
String[] scores = scanner.nextLine().split(",");
student.score1 = Double.parseDouble(scores[0]);
student.score2 = Double.parseDouble(scores[1]);
student.score3 = Double.parseDouble(scores[2]);
students.add(student);
}
scanner.close();
double maxAverage = 0;
Student maxAverageStudent = null;
for (Student student : students) {
double average = student.calculateAverageScore();
if (average > maxAverage) {
maxAverage = average;
maxAverageStudent = student;
}
System.out.println("学生:" + student.name + ", 平均成绩: " + average);
}
System.out.println("\n平均分最高的学生信息:");
System.out.println("ID: " + maxAverageStudent.id);
System.out.println("班级: " + maxAverageStudent.classNum);
System.out.println("姓名: " + maxAverageStudent.name);
System.out.println("平均成绩: " + maxAverageStudent.calculateAverageScore());
}
}
```
这段代码首先读取用户输入的五位学生数据,计算每位学生的平均分,并找出平均分最高的学生。最后,它会打印出所有学生的信息和最高分学生的信息。
阅读全文