第七章第四题(分析成绩)(Analyze scores) - 编程练习题答案

绣橘
• 阅读 833

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

点赞
收藏
评论区
推荐文章
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
codedecent codedecent
3年前
这道SQL有一点...不一样?
原题目从课程表(课程号,课程名)学生表(学号,年龄,性别,课程号,分数)中查询出平均分大于60分的学生的学号及课程成绩最初尝试一开始不太会做,直接在网络上搜索答案,找到的却只有这样的题目答案sqlSELECTsid,AVG(sscore)FROMscoreGROUPBYsidHAVINGavg(sscore)60单表操作
Nick16 Nick16
4年前
Mysql - 查看、创建、更改 数据库和表
一、一探究竟我想看看有多少个数据库,有多少个表,以及表里有啥东西。那么你可以这样:命令:查看多少个数据库:注意后面带s查看SHOWDATABASES;查看表USEblog;SHOWTABLES;查看表
Wesley13 Wesley13
3年前
剑指Offer
题目:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。分析:将数字和1先做与运算,然后将1右移一位,现在是判断数字的第二位是不是1,这样循环的做下去即可。也可以转换成字符串再统计1的个数。程序:CclassSolution{public:intN
Stella981 Stella981
3年前
20180109Java位运算
一,Java位运算1.表示方法:  在Java语言中,二进制数使用补码表示,最高位为符号位,正数的符号位为0,负数为1。补码的表示需要满足如下要求。 (1)正数的最高位为0,其余各位代表数值本身(二进制数)。 (2)对于负数,通过对该数绝对值的补码按位取反,再对整个数加1。 2.位运算符位运算表达式由
可莉 可莉
3年前
20180109Java位运算
一,Java位运算1.表示方法:  在Java语言中,二进制数使用补码表示,最高位为符号位,正数的符号位为0,负数为1。补码的表示需要满足如下要求。 (1)正数的最高位为0,其余各位代表数值本身(二进制数)。 (2)对于负数,通过对该数绝对值的补码按位取反,再对整个数加1。 2.位运算符位运算表达式由
Stella981 Stella981
3年前
Github怎么写README
编辑README文件大标题(一级标题):在文本下面加等于号,那么上方的文字就变成了大标题,等于号的个数无限制,但一定要大于0大标题\中标题(二级标题):在文本下面加下划线,那么上方的文本就变成了中标题,下划线个数无限制,中标题比大标题低一级中标题\1~6级标题:文本大小依次减小,以号开头,多少个号就是多
Stella981 Stella981
3年前
Python打牢基础练习练习题 + 答案
Python打牢基础练习练习题答案练习题(持续更新中)练习答案练习题(持续更新中)1、打印1000之内的三位数“水仙花数”,“水仙花数”是指组成这个数的每一位数的立方和等于其数,称为”水仙花数”例:153是一个水仙花数,1531_1_15_5_53_3_32、
Stella981 Stella981
3年前
Seeker的奇妙求职历险(网易互联网笔试)
素数的个数给出一个包含n个正整数的数组a,把a\i\拆分为若干个和为a\i\的素数,求拆分后最多能有多少个素数。第一行数据为n,表示数组长度,第二行为n个元素。输入3111输出01不可拆分输入135761为0个,3为1个,5为(2,3
Wesley13 Wesley13
3年前
2020 春招 华为笔试 2月26日
时间是两个小时,总共三道编程题目。第一道题目大意:  输入一个int类型的数,判断它的比特流中有多少个“010”,及第一个“101”的下标(这个下标是从低位向高位数的)。  如:输入:21      输出  20    原因:21 二进制表示为 00000000000000000000000000010101
Wesley13 Wesley13
3年前
MySQL与Mongo简单的查询 1
首先在这里我就不说关系型数据库与非关系型数据库之间的区别了(百度上有很多)直接切入主题我想查询的内容是这样的:分数大于0且人名是bob或是jake的总分数 平均分数 最小分数 最大分数 计数举这个实例来试试用MySQL和mongodb分别写一个查询首先我们先做一些准备工作MySQL的数据库结构如下1CREATETABL