为了账号安全,请及时绑定邮箱和手机立即绑定

Eclipse 没报错,运行时控制台空白,有种死循环的感觉

package com.imooc;
import java.util.*;
public class HelloWorld8_1 {
    public static void main(String[] args) {
        Scanner print=new Scanner(System.in);
        int[] scores;
        int numPeople=print.nextInt();
        System.out.println("请输入班级人数:");
        scores=new int[numPeople];
        for(int i=0;i<scores.length;i++){
            System.out.println("请输入第"+(i+1)+"个学生的成绩:");
            int score=print.nextInt();
            if(score>=0&&score<=100){
            	scores[i]=score;
            }
        }
        HelloWorld8_1 hello=new HelloWorld8_1();
        hello.ranking(scores);
    }
    public void ranking(int[] scores){
        Arrays.sort(scores);
        int j=0;
        System.out.println("以下是前三名成绩:");
        for(int i=scores.length-1;i>scores.length-4;i--){
            j++;
            System.out.println("第"+j+"名:"+scores[i]);
        }
    }
}


正在回答

3 回答

控制台空白是在等你输入。。。。

原因:是因为你下面这两句语句顺序反了

 int numPeople=print.nextInt();

 System.out.println("请输入班级人数:");

你把这两句语句倒过来,就会在控制台先输出提示语句,在等待你的输入。。。


0 回复 有任何疑惑可以回复我~
#1

Jaxon 提问者

谢谢!完美搞定
2015-12-04 回复 有任何疑惑可以回复我~

你这个输入的就只有一个值,为什么拿数组保存?

你要多次输入怎么不用循环啊

0 回复 有任何疑惑可以回复我~
#1

Jaxon 提问者

是用的循环哦^o^ 你再仔细看看~
2015-12-04 回复 有任何疑惑可以回复我~

int numPeople=print.nextInt();

System.out.println("请输入班级人数:");

这两行的顺序对调一下

代码是顺序执行的,当然应该先输出"请输入班级人数:",再由用户输入啊

0 回复 有任何疑惑可以回复我~
#1

Jaxon 提问者

谢谢!你的回答也很赞,但楼上抢先你一步回答,没有采纳只能说声抱歉啦~
2015-12-04 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Eclipse 没报错,运行时控制台空白,有种死循环的感觉

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信