问答详情
源自: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 };

        HelloWorld hello = new HelloWorld();

        hello.mark(scores);

            }

    public void mark(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]);

        }

    }

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

    

    


提问者:慕粉3434242 2016-05-30 21:59

个回答

  • 慕仔0276349
    2016-05-31 20:21:39
    已采纳

    for语句那行i++改成i--;main方法里没有打印“考试成绩的前三名为:”

  • 孤独剑888
    2016-05-31 00:43:31

    import java.util.Arrays;


    public class HelloWorld {

        

        //完成 main 方法

        public static void main(String[] args) {

            int[] scores = {89 , -23 , 64 , 91 , 119 , 52 , 73};   

            HelloWorld hello = new HelloWorld();

            hello.fun(scores);  

        }

        

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

        

        public void fun(int[] num)

        {

            int count = 3;

            for(int i = num.length-1 ;i>=0&&count >0;i--)

            {

                Arrays.sort(num);

                if (num[i] > 0 && num[i] < 100)

                {

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

                    count --;

                }

            }

        }