编写一个程序,读人个数不确定的考试分数,并且判断有多少个分数是大于或等于平均分,多少个分数是低于平均分的。输人一个负数表示输入的结束。假设最高分为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.comimport 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)