Java 实现:输入 3 个学生成绩信息并计算总分与平均分
以下是使用 Java 实现的代码: ```java import java.util.Scanner; class Score { int usualScore; int finalScore; public int calculateTotalScore() { return (int) (usualScore * 0.4 + finalScore * 0.6); } } class Student { String studentId; String name; Score chineseScore; Score mathScore; Score physicsScore; public int calculateTotalScore() { return chineseScore.calculateTotalScore() + mathScore.calculateTotalScore() + physicsScore.calculateTotalScore(); } public double calculateAverageScore() { return (double) calculateTotalScore() / 3; } } public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Student[] students = new Student[3]; for (int i = 0; i < 3; i++) { Student student = new Student(); System.out.print("请输入第" + (i + 1) + "个学生的学号: "); student.studentId = scanner.nextLine(); System.out.print("请输入第" + (i + 1) + "个学生的姓名: "); student.name = scanner.nextLine(); System.out.print("请输入第" + (i + 1) + "个学生的语文平时成绩: "); int usualChineseScore = scanner.nextInt(); System.out.print("请输入第" + (i + 1) + "个学生的语文期末成绩: "); int finalChineseScore = scanner.nextInt(); student.chineseScore = new Score(); student.chineseScore.usualScore = usualChineseScore; student.chineseScore.finalScore = finalChineseScore; System.out.print("请输入第" + (i + 1) + "个学生的数学平时成绩: "); int usualMathScore = scanner.nextInt(); System.out.print("请输入第" + (i + 1) + "个学生的数学期末成绩: "); int finalMathScore = scanner.nextInt(); student.mathScore = new Score(); student.mathScore.usualScore = usualMathScore; student.mathScore.finalScore = finalMathScore; System.out.print("请输入第" + (i + 1) + "个学生的物理平时成绩: "); int usualPhysicsScore = scanner.nextInt(); System.out.print("请输入第" + (i + 1) + "个学生的物理期末成绩: "); int finalPhysicsScore = scanner.nextInt(); student.physicsScore = new Score(); student.physicsScore.usualScore = usualPhysicsScore; student.physicsScore.finalScore = finalPhysicsScore; scanner.nextLine(); // 处理输入流中的换行符 students[i] = student; } for (int i = 0; i < 3; i++) { System.out.println("第" + (i + 1) + "个学生的总分: " + students[i].calculateTotalScore()); System.out.printf("第" + (i + 1) + "个学生的平均分: %.2f\n", students[i].calculateAverageScore()); } } } ``` 这段代码首先创建了`Score`类来表示成绩,包含平时成绩和期末成绩,以及计算总成绩的方法。然后创建`Student`类来表示学生,包含学号、姓名和各个科目的成绩对象,以及计算总分和平均分的方法。在`main`方法中,通过用户输入创建学生对象并存储在数组中,最后计算并输出每个学生的总分和平均分。 ######[AI写代码神器 | 847点数解答 | 2024-10-11 08:45:50]
- C 语言:快速实现 5 个学生信息录入、按成绩升序排序并输出!(字节豆包 | 373点数解答 | 2024-10-30 00:37:20)409
- C语言实现:输入5名学生信息并按成绩升序排序输出(字节豆包 | 354点数解答 | 2024-10-30 18:45:58)353
- C语言:输入5个学生信息,按成绩升序排序并输出(字节豆包 | 373点数解答 | 2024-10-31 19:49:58)344
- C语言:输入5名学生信息并按成绩升序排序输出(字节豆包 | 326点数解答 | 2025-01-01 20:11:47)339
- Java 实现复制粘贴功能:打造简易文本复制粘贴程序(GPT | 1497点数解答 | 2024-08-25 09:40:33)403
- 培训机构学员成绩与年龄更新:C++ 代码实现(DeepSeek | 186点数解答 | 2025-12-16 18:04:31)58
- Python 处理培训机构学员培训后年龄与 NOIP 成绩提升情况(DeepSeek | 73点数解答 | 2025-12-16 18:05:20)61
- 培训机构学员成绩提升:C++代码实现年龄与NOIP成绩更新(DeepSeek | 178点数解答 | 2025-12-31 12:20:24)58
- 成绩等级统计:20个60 - 100分成绩的等级数量揭秘(字节豆包 | 219点数解答 | 2025-04-09 10:20:32)218
- 解决数据库“dm.jdbc.driver.dmexception: 数据溢出”问题的全步骤指南(阿里通义 | 598点数解答 | 2024-10-15 15:48:38)305
- 达梦数据库数据溢出问题排查及多维度解决方法(阿里通义 | 403点数解答 | 2024-10-15 15:48:41)1134
- Java:抽象类 Vehicle 及子类 Car、MotorBike 实战演示(讯飞星火 | 440点数解答 | 2024-06-06 23:18:54)310