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

这里为什么错的?sorts.sort(scores);

import java.util.Arrays;
public class 二 {
 public static void main(String[] args){
  二 sorts=new 二();
  int[] scores=new int[]{89,23,-64,91,55,119};
  sorts.sort(scores);     
 }
public void showTop3(int[] score){
 Arrays.sort(score);
 int num=0;
 for (int i=score.length;i>=0;i++){
  if (score[i]<0||score[i]>=100){
   continue;
   
  }
  num++;
  if(num>3){
   break;
  }
  System.out.println(score[i]);
 }
}
}

提问者:黎明4238367 2017-01-08 11:27

个回答

  • 慕粉3140518
    2017-01-08 13:04:08
    已采纳

    import java.util.*;

    public class HelloWorld {

        //完成 main 方法

        public static void main(String[] args) {

            HelloWorld score = new HelloWorld();

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

            System.out.println("考试成绩的前三名为:");

            score.getsort(scores); 

        }

        

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

        public void getsort(int[] scores){

            Arrays.sort(scores);

            int count=0;

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

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

                    continue;

                }

                ++count;

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

                if(count == 3){

                    break;

                }

            }

        }

        

    /**这是我写的,你写的有几处错误,1.for循环应该是: for (int i = scores.length - 1; i >= 0; i--),2, sorts.sort(scores); 对于这个你已经在你定义的方法里排序过了,这个是排序,不是调用,你的调用应该是sorts.showTop3(scores);其他没啥大问题**/

  • 慕尼黑7155845
    2017-01-15 15:50:47

    你为啥用二?不能用汉语!!!

  • 黎明4238367
    2017-01-08 13:17:18

    厉害了word哥