3867 - 4.9 找出两个最高
时间限制 : 1 秒
内存限制 : 128 MB
编写程序,提示用户输入学生的个数、每个学生的名字及其分数,最后显示获得最高分的学生和第二高分的学生。(本题中所有学生的分数均不相同)
题目输入
首先输入一行是一个正整数为学生个数n,然后输入n行,每行两个值,分别是学生名字和他的分数
题目输出
输出获得最高分的学生和第二高分的学生。格式如下:
最高分学生姓名 第二高分学生姓名
输入/输出样例
输入格式
3 张三 68 李四 97 王五 77
输出格式
李四 王五
Java解答
import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO 自动生成的方法存根 Scanner input = new Scanner(System.in); int n = input.nextInt(); int i = 1; String A = input.next(); double scoreA = input.nextDouble(); double scoreB = scoreA; String B = A; if (n == 1) { System.out.print(A); } else { while (i < n) { String C = input.next(); double scoreC = input.nextDouble(); if (scoreC > scoreA) { scoreB = scoreA; B = A; scoreA = scoreC; A = C; } else { if (scoreC > scoreB) { scoreB = scoreC; B = C; } } i = i + 1; } System.out.print(A +" " + B); } } }