java基础训练(3)

21 篇文章 0 订阅
订阅专栏

统计学生的成绩

  • 统计一组学生成绩的总分、平均分、最高分和最低分
  • 假如一组学生100个人,利用前面所学的知识,程序就需要声明10个变量score1,score2,…,score100,来记住每位的成绩,再计算平均分
  • 如果用平常的数学计算平均值得方法,会显得特别麻烦。所以我们使用一数组来保存多个成绩,通过数组的索引或下标来访问各个学生的成绩,再使用循环来处理。

1) 无范围的代码实现:

在这里插入图片描述
在这里插入图片描述

运行结果如下:

在这里插入图片描述

2)范围内的代码实现:

利用增强for语句循环来遍历数组

在这里插入图片描述

每个数组的索引(下标)都有一个范围,即[0,length - 1]。在访问数组元素时,索引不能超出这个范围,否则程序就会报错(ArrayIndexOutOfBoundsException,即数组角标越界异常),所以应删除“scores[10] = 78;”

在这里插入图片描述

在使用变量引用一个数组时,变量必须只想一个有效的数组对象,而该变量的值为null,意味着没有指向任何数组,这时该元素访问数组元素就会出现错误(NullPointerException,即空指针异常),所以该改成“ new double[10] ”

在这里插入图片描述

成绩在给定的范围内的正确代码如下:

public class Task07_1 {
    public static void main(String[] args) {
        //声明部分
        double[] scores = new double[10]; //双精度一维数组,10个元素,scores[0], scores[1],..., scores[9]
        double sum, average, max, min;
        Scanner sc = new Scanner(System.in);

        //输入部分
        for (int i = 0; i < scores.length;i++) {
            while (true) {
                System.out.print("scores[" + i + "] = ");
                scores[i] = sc.nextDouble();
                //判断成绩是否合法  -  [0,100]
                if (scores[i] >= 0 && scores[i] <= 100) {
                    break; //跳出while循环
                } else {
                    //提示用户输入成绩不合法
                    System.out.println("温馨提示:成绩必须要在[0,100]范围内!");
                }
            }
        }

        //处理部分
        sum = 0;
        for (int i = 0; i <scores.length; i++) {
            sum = sum + scores[i];
        }
        average = sum / scores.length;

        max = Double.MIN_VALUE;
        for (int i = 0; i < scores.length; i++) {
            if (scores[i] > max) {
                max = scores[i];
            }
        }
        min = Double.MAX_VALUE;
        for (int i = 0; i< scores.length; i++) {
            if (scores[i] < min) {
                min = scores[i];
            }
        }

        //输出部分
        System.out.println("sum = " + sum);
        System.out.println("average = " + average);
        System.out.println("max = " + max);
        System.out.println("min = " + min);
    }

}
  • 眼看百遍,不如手敲一遍哦!!!
  • 加油!!!
写文章

热门文章

  • 使用Intellij IDEA输出 2821
  • 解决java在cmd中的运行小问题 2198
  • 单、多分支结构的应用(有点复杂) 1875
  • 认识JDK 1449
  • H3C新华三杯比赛练习题(1) 1337

分类专栏

  • 李明秀的学习过程 21篇

最新评论

  • 安装GNS3 0.8.3.1软件及配置环境

    Ziin_: 大神可以问一下吗?如果他显示判断版本失败怎么办

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • H3C新华三比赛练习题(5)
  • H3C新华三比赛练习题(4)
  • Linux操作系统安全配置
2023年7篇
2022年22篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司鹤壁网站优化推广报价云浮网站制作价格海东网站定制推荐连云港关键词按天收费哪家好衢州企业网站制作价格六安设计公司网站潜江网站设计模板飞来峡外贸网站制作公司湖州网站改版推荐济宁建设网站推荐丹东网站制作设计多少钱驻马店SEO按效果付费多少钱南昌百度爱采购推荐福田seo网站优化推荐驻马店SEO按天计费报价西乡百度爱采购报价兴安盟seo多少钱南平百度网站优化排名衡阳品牌网站设计报价漯河网站改版多少钱文山百度网站优化排名莆田百度关键词包年推广价格海南网站推广系统多少钱鸡西阿里店铺托管多少钱孝感网站推广系统报价延边网站推广系统公司河池关键词排名报价定西网站seo优化多少钱杭州网站推广系统公司宝鸡关键词按天计费歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化