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

大神们 可以帮我看看有什么问题吗?结果是52 64 73 不是正确答案

package Chapter8;

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("Top 3:");

        HelloWorld hello=new HelloWorld();

        hello.getTop3(scores);

        

        

    }

    

    //定义方法完成成绩排序并输出前三名的功能

    public void getTop3(int[] scores){

        Arrays.sort(scores);

        int num=0;

        for (int i=0;i<scores.length;i++){

            if (scores[i]<0||scores[i]>100){

                continue;

                

            }

            num++;

            if (num>3){

                break;

            }

            System.out.println(scores[i]);

        }

    }

    

    

    

    

    

    

    

    

    

}


提问者:boomJeremy3296985 2016-07-21 10:47

个回答

  • LanSniper
    2016-07-21 14:23:21

        for (int i=0;i<scores.length;i++)这里面要使用倒序遍历,从scores.length-1到0,方便从大到小取值

  • qq_刻骨_03610297
    2016-07-21 12:41:41

    for(int i=score.length-1;i>=0;i--)