从键盘接收5名学生3门课程的成绩, 并求出该学生3门课程的总分和平均分,以及每门课程的平均分Java
时间: 2024-11-05 19:28:34 浏览: 12
班级学生成绩管理系统课程设计样本
在Java中,你可以使用Scanner类从用户输入获取数据,然后通过循环结构遍历学生和成绩,计算总分、平均分及每门课程的平均分。以下是一个简单的示例程序:
```java
import java.util.Scanner;
public class StudentScoreCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 获取学生数量
System.out.println("请输入学生人数:");
int studentCount = scanner.nextInt();
double[] scores = new double[studentCount * 3]; // 存储3门课程的成绩
// 循环获取每个学生的成绩
for (int i = 0; i < studentCount; i++) {
System.out.println("请输入学生" + (i+1) + "的三门课程成绩:");
for (int j = 0; j < 3; j++) {
scores[i*3 + j] = scanner.nextDouble();
}
}
// 计算总分和平均分
double totalScore = 0;
for (double score : scores) {
totalScore += score;
}
double averageScore = totalScore / (studentCount * 3);
System.out.println("所有学生的总分: " + totalScore);
System.out.println("平均分: " + averageScore);
// 每门课程的平均分
double courseAverage[] = new double[3];
for (int j = 0; j < 3; j++) {
courseAverage[j] = scores.reduce(0, Math::addExact) / studentCount;
System.out.println("第" + (j+1) + "门课程的平均分: " + courseAverage[j]);
}
scanner.close();
}
}
```
在这个程序中,首先获取学生数,然后通过嵌套循环分别获取每位学生的每门课程分数,并存储在数组中。之后计算总分和平均分,最后计算并打印每门课程的平均分。
阅读全文