问答详情
源自:7-1 编程练习

看不出哪里错了

import java.util.Arrays;
public class HelloWorld {
    
    //完成 main 方法
    public static void main(String[] args) {
        int[] scores={89 , -23 , 64 , 91 , 119 , 52 , 73};
        System.out.println("考试成绩的前三名为:");
        HelloWorld heelo=new HelloWorld();    
        hello.show(scores);
    }
    
    //定义方法完成成绩排序并输出前三名的功能
    public void show(int[] scores){
        Arrays.sort(scores);
        int num=0;
        for(int i=scores.length-1;i>=0;i--){
            if(scores[i]<0||scores[i]>100){
                continue;
            }
            num++;
            if(num>=3){
                break;
            }
            System.out.println(scores[i]);
        }
    }
}

提问者:慕雪1141983 2019-10-13 13:05

个回答

  • Piang
    2019-10-14 15:26:36

    import java.util.Arrays;
    public class HelloWorld {
        
        //完成 main 方法
        public static void main(String[] args) {
            int[] scores={89 , -23 , 64 , 91 , 119 , 52 , 73};
            System.out.println("考试成绩的前三名为:");
            HelloWorld heelo=new HelloWorld();    //heelo拼写错误,与下一句调用不一致。HelloWorld hello=new HelloWorld();
            hello.show(scores);
        }
        
        //定义方法完成成绩排序并输出前三名的功能
        public void show(int[] scores){
            Arrays.sort(scores);
            int num=0;
            for(int i=scores.length-1;i>=0;i--){
                if(scores[i]<0||scores[i]>100){
                    continue;
                }
                num++;
                if(num>=3){
                    break;
                }
                System.out.println(scores[i]);//语句位置错误,放这里只能打印两个值,需要放在num++后面
            }
        }
    }