第七章第四题(分析成绩)(Analyze scores) - 编程练习题答案
编写一个程序,读人个数不确定的考试分数,并且判断有多少个分数是大于或等于平均分,多少个分数是低于平均分的。输人一个负数表示输入的结束。假设最高分为100。
Write a program that reads an unspecified number of scores and
determines how many scores are above or equal to the average and how many
scores are below the average. Enter a negative number to signify the end of the
input. Assume that the maximum number of scores is 100.
下面是参考答案代码:
// https://cn.fankuiba.com
import java.util.Scanner;
public class Ans7_4_page236 {
public static void main(String[] args) {
double[] scoreList = new double[100];
Scanner input = new Scanner(System.in);
System.out.print("Enter scores: (negative number signifies end): ");
int count= 0;double score;
do {
score = input.nextDouble();
scoreList[count] = score;
count++;
}while (score >= 0);
double average,sum = 0;
for (int i = 0; i < count-1; i++)
sum += scoreList[i];
average = sum / (count - 1);
System.out.println("Average of scores: "+average);
int minAverge = 0;
int maxAverge = 0;
for (int i = 0; i < count-1; i++) {
if (scoreList[i] >= average)
minAverge++;
else
maxAverge++;
}
System.out.println("Number of scores above or equal to average: " +minAverge+
"\n"+"Number of scores below average: "+(maxAverge));
}
}
适用Java语言程序设计与数据结构(基础篇)(原书第11版)Java语言程序设计(基础篇)(原书第10/11版)
发布在博客:(https://cn.fankuiba.com)