中易网

编写程序,提示用户输入学生的个数,每个学生的名字及其分数,最后显示最高分的学生和第二高分的学生

答案:2  悬赏:50  
解决时间 2021-03-11 18:16
编写程序,提示用户输入学生的个数,每个学生的名字及其分数,最后显示最高分的学生和第二高分的学生
最佳答案
Student.java
import java.io.*;
import java.util.*;
public class Student{
    
    public static void main( String[] args){
        int n;
        Scanner in = new Scanner(System.in);
        System.out.println("请输入学生的个数:");
        n = in.nextInt();
        String[] stu=new String[n];
        int[] score = new int[n];
        for(int i=0;i           stu[i] = in.next();
           score[i]= in.nextInt();
        }
        int first,second,first_i,second_i;
        first = score[0];
        second= score[0];
        first_i= 0;
        second_i=0;
        for(int i=1;i            if(score[i] >second){
                second = score[i];
                second_i = i;
                if(second > first){
                    int t  = second;
                    second = first;
                    first = t;
                  
                    t  = second_i;
                    second_i = first_i;
                    first_i = t;
                }       
            }
        }
        System.out.println("最高分学生:"    + stu[first_i]+" 分数:"+first);
        System.out.println("第二高分学生:" + stu[second_i]+" 分数:"+second);
    } 
}
运行结果:
java Student 
请输入学生的个数:
5
张三 1
李四 2
王五 3
赵八 3
孙九 5
最高分学生:孙九    分数:5
第二高分学生:王五    分数:3
全部回答
public static void main(String[] args) throws Exception {
        Scanner in=new Scanner(System.in);
        System.out.println("请输入学生的个数:");
        int num=in.nextInt();
        String names[]=new String [num];//学生姓名数组
        double scores[]=new double [num];//学生分数数组
        double max=0;    //记录最大分数
        int index=0;    //记录最大分数的下标
        for (int i = 0; i <num; i++) {
            System.out.print("请输入第"+(i+1)+"个学生的姓名:");
            names[i]=in.next();
            System.out.print("请输入第"+(i+1)+"个学生的分数:");
            scores[i]=in.nextDouble();
            if(scores[i]>max){
                max=scores[i];
                index=i;
            }
        }
        System.out.println("最高分的学生是:"+names[index]+",分数为:"+scores[index]);
    }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
艾薇儿Whenyou'regone歌词
有关勇于承担的名言警句
男主名字中有易浅的有哪些小说
从西南财大到乐山怎么走
日本人说:我们不会向两个国家道歉:一个是韩
美立方日租房在什么地方啊,我要过去处理事情
读高中住校一个星期七天零花钱200够吗,不包
C++析构函数的调用问题
悦诗风吟气垫粉凝霜怎么样
怎么使自己的域名解析到另一个域名的子页面呢
烟台大学的2016新生怎么查自己的班级
铫期冢怎么去啊,有知道地址的么
你好,我们单位在杭州拱墅区,社保也在这,现
"河间传"求解释
求推荐一款电容麦,手握的,魅声600的声卡,
推荐资讯
企业家不愿捐款 如何说服
能告诉我一些让自己成熟有心计点的方法吗。我
长征街/洛滨路(路口)地址有知道的么?有点事
环境科学技术及资源科学技术属于什么学科类型
一般的一卷铅皮是多重?
巾帼枭雄之义海豪情里九姑娘和刘醒有没有生孩
互感器电表线圈能穿几根线
小庄子村地址在哪,我要去那里办事
求文本txt转mp3软件
穿越火线玩不了说是客户端的版本太低,要下载
645-297的简便运算怎么算
新滩钢材门市地址在哪,我要去那里办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?