java实现//每到期末考试完毕,大家都比较忧心自己的成绩,不挂科才是爽。 // 现在每个人都想做如下两件事情:(一)自己的若干门成绩中,低于平均分的科目数; // (二)如果有不及格的科目,会惊呼“NO”。请你编程实现。 //输入数据包含多组测试数据。每组数据先是一个整数n, // 表示考试的科目数,紧接着是n科的成绩(整数,且值位于0~100 //对于每组测试数据,在一行上输出低于平均分的科目数 // ,如果有不及格的科目,还需要在此行上输出信息NO。
时间: 2023-12-30 20:05:39 浏览: 115
利用java实现学生成绩
Java代码如下:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
int n = scanner.nextInt();
int[] scores = new int[n];
int sum = 0;
for (int i = 0; i < n; i++) {
scores[i] = scanner.nextInt();
sum += scores[i];
}
double average = (double) sum / n;
int belowAverage = 0;
boolean hasFailed = false;
for (int i = 0; i < n; i++) {
if (scores[i] < average) {
belowAverage++;
}
if (scores[i] < 60) {
hasFailed = true;
}
}
System.out.print(belowAverage);
if (hasFailed) {
System.out.println(" NO");
} else {
System.out.println();
}
}
scanner.close();
}
}
```
解释如下:
1. 使用 `Scanner` 读取输入数据。
2. 对于每组数据,读取科目数和成绩,同时计算总分。
3. 计算平均分,并遍历成绩数组,分别统计低于平均分的科目数和不及格的科目数。
4. 根据题目要求输出结果,注意输出格式。
5. 使用 `Scanner` 关闭输入流。
阅读全文