Java黑皮书课后题第5章:*5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生
*5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生名字、次高分的学生名字
- 题目
- 题目概述
- next()读取一个字符与nextLine()读取一行
- 破题
- 代码
题目
题目概述
*5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生名字、次高分的学生名字
使用Scanner类的next()方法而不是nextLine()方法来读取名字
next()读取一个字符与nextLine()读取一行
举个例子理解:
Scanner input = new Scanner(System.in);
这个时候往console控制台输入:ABC 123
String str_next1 = input.next();
那么str_next1是:“ABC”
String str_next2 = input.next();
str_next2为:“123”
Scanner input = new Scanner(System.in);
这个时候往console控制台输入:ABC 123
String str_nextLine = input.nextLine();
那么str_nextLine是:“ABC 123”
破题
输入顺序是这样的:学生个数 学生1名 学生1分数 学生2名 学生2分数 学生3名 学生3分数…学生n名 学生n分数
- 我们先读取学生个数
- 再利用循环读取后续输入数据
- 同时,在循环中要判断读取的学生成绩是否为最大值、次大值
代码
import java.util.Scanner;public class Test5_9 {public static void main(String[] args) {// 读取学生个数Scanner input = new Scanner(System.in);System.out.println("请输入学生个数:");int i = input.nextInt();// 读取后续数据+判断最大值次大值double score = 0.0, biggestScore = 0.0, secondScore = 0.0;String student = "", biggestStudent = "", secondStudent = "";System.out.println("请输入学生姓名与成绩");for(int n = i;n > 0;--n){student = input.next();score = input.nextDouble();// 当输入值为score biggestScore secondScore最大值if(score > biggestScore){secondScore = biggestScore;secondStudent = biggestStudent;biggestScore = score;biggestStudent = student;}else if((score < biggestScore) && (score > secondScore)){// 当输入值大于次大、小于最大时secondScore = score;secondStudent = student;} else if (score == biggestScore){secondScore = score;secondStudent = student;}}// 输出结果System.out.println("最高分学生名为:" + biggestStudent);System.out.println("次高分学生名为:" + secondStudent);}
}
Java黑皮书课后题第5章:*5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生相关推荐
- Java黑皮书课后题第2章:2.11(人口统计)重写编程练习题1.11,提示用户输入年数,然后显示这个年数之后的人口值,将1.11中的提示用于这个程序
2.11(人口统计)重写编程练习题1.11,提示用户输入年数,然后显示这个年数之后的人口值,将1.11中的提示用于这个程序 题目 题目描述 运行示例 涉及的1.11代码(非本题代码) 破题 代码块 题 ...
- Java黑皮书课后题第1章:1.13(代数:求解2*2线性方程组)编写程序,求解以下方程组并显示x和y的值 3.4x+50.2y=44.5 2.1x+0.55y=5.9
Java黑皮书课后题第1章:(代数:求解2*2线性方程组) 题目 题目描述 破题 代码块 方法评析 赘述 修改日志 题目 题目描述 求x和y值: 3.4x+50.2y=44.5 2.1x+0.55y= ...
- Java黑皮书课后题第3章:3.14(游戏:猜硬币的正反面)编写程序,让用户猜一猜是硬币的正面还是反面。随即产生一个整数0或1,分别表示
3.14(游戏:猜硬币的正反面)编写程序,让用户猜一猜是硬币的正面还是反面 题目 题目概述 破题 代码 题目 题目概述 3.14(游戏:猜硬币的正反面)编写程序,让用户猜一猜是硬币的正面还是反面 随即 ...
- Java黑皮书课后题第3章:*3.3(代数:求解2*2线性方程)编写程序,提示用户输入a、b、c、d、e和f,然后显示结果
*3.3(代数:求解2*2线性方程)编写程序,提示用户输入a.b.c.d.e和f,然后显示结果 题目 题目描述 运行示例 破题 代码 题目 题目描述 3.3(代数:求解22线性方程) 编写程序,提示用 ...
- Java黑皮书课后题第2章:*2.21(金融应用:计算未来投资回报)编写程序,读取投资总额、年利率和年龄,显示未来投资回报金额
*2.21(金融应用:计算未来投资回报)编写程序,读取投资总额.年利率和年龄,显示未来投资回报金额 题目 题目概述 举例与运行示例 思路 代码 赘述 题目 题目概述 2.21(金融应用:计算未来投资回 ...
- Java黑皮书课后题第6章:*6.2(求一个整数各位数字之和)编写一个方法,计算一个整数各位数字之和。使用下面的方法头:public static int sumDigits(long n)
6.2(求一个整数各位数字之和)编写一个方法,计算一个整数各位数字之和.使用下面的方法头:public static int sumDigits(long n) 题目 题目概述 槽点 代码 运行示例 ...
- Java黑皮书课后题第7章:**7.19(是否排好序了?)编写以下方法,如果参数中的list数组已经排好序了则返回true。编写一个测试程序,提示用户输入一个列表,显示该列表是否已经排好序
7.19(是否排好序了?)编写以下方法,如果参数中的list数组已经排好序了则返回true.编写一个测试程序,提示用户输入一个列表,显示该列表是否已经排好序 题目 题目描述 破题 代码 题目 题目描述 ...
- Java黑皮书课后题第5章:5.6(英里与千米之间的互换)编写一个程序,并排显示下面两个表格
5.6(英里与千米之间的互换)编写一个程序,并排显示下面两个表格 题目 题目概述 破题 代码 题目 题目概述 5.6(英里与千米之间的互换)编写一个程序,并排显示下面两个表格 英里 千米 千米 英里 ...
- Java黑皮书课后题第5章:5.5(千克与磅之间的互换)编写一个程序,并排显示下面两个表格
5.5(千克与磅之间的互换)编写一个程序,并排显示下面两个表格 题目 题目概述 破题 代码 题目 题目概述 5.5(千克与磅之间的互换)编写一个程序,并排显示下面两个表格 千克 磅 磅 千克 1 2. ...
- Java黑皮书课后题第7章:*7.29(游戏:挑选四张牌)编写一个程序,从一副52张牌中选出4张,然后计算它们的和。Ace King Quee Jack分别表示1、13、12和11,显示得到和24的次
*7.29(游戏:挑选四张牌)编写一个程序,从一副52张牌中选出4张,然后计算它们的和.Ace King Quee Jack分别表示1.13.12和11,显示得到和为24的选牌次数 题目 题目描述 破 ...
最新文章
- 可以打游戏的计算机,还在用笔记本玩游戏?台式机才能给你极致享受
- 宏基因组公众号创立初衷及如何注册一个名字好记的公众号
- 从对比学习(Contrastive Learning)到对比聚类(Contrastive Clustering)
- 单纯形法(四)理论部分(终结)
- java怎么测试dao_java-Mockito使用模拟对象测试DAO
- 每个程序员都可能犯过的10个错误
- 贪心算法之阿里巴巴与四十大盗(背包问题)
- 【编程】基本程序设计模式
- 将TIMESTAMP类型的差值转化为秒的方法
- 利用IE浏览器进行web打印
- 为什么我推荐你立刻使用Java 8 Stream?性能逆天了
- 第三十一天 MySQL并发控制、存储引擎介绍、用户权限管理、缓存管理和数据类型选择...
- android脚本,安卓好用的脚本程序—Gscript
- kafka的offset理解
- react 学习之Protal
- TUP首期主题论坛报道:中小型开发商移动开发的生存之道
- JavaWeb全面知识总结之呕血三天精心整理
- 【OSX】MAC下能用的炒股软件_我是亲民_新浪博客
- execl()函数与execlp()函数
- 设计模式之里氏替换原则