请问大神我的代码哪里错啦

来源:7-1 编程练习

慕无忌8819960

2018-06-11 21:21

public class HelloWord {

import java.util.Arrays;

   //完成 main 方法

   public static void main(String[] args) {

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

       int count=0;

       HelloWord gen=new HelloWord();

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

       gen.oo(scores);    

   }

   

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

   

   public void oo(int[] scores){

       Arrays.sort(scores);

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

          if(scores>0&&scores<100) {

           count++;

          }

        else if(count=3){       

           System.out.println(Arrays.toString(scores));    }

          else{continue;}

          

                    

       }

   }

   

   

   

   

   

   

   

   

}


写回答 关注

2回答

  • 梓梓然
    2018-06-14 10:20:42

    import java.util.Arrays;

    public class hello{


       //完成 main 方法

       public static void main(String[] args) {

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

           hello gen=new hello();

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

           gen.oo(scores);    

       }

       

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

       

       public void oo(int[] scores){

      int count=0;

           Arrays.sort(scores);

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

           {

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

              {

             continue;

              }

              count++;

           if(count<=3)

            {       

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

            }           

           }

       }


    慕圣4085...

    scores[i]<0||scores[i]>100 这行代码有问题吧 应该是 0-100才有效 这行代码里面 只要满足一条 就继续了 应该是 scores[i]<0&&scores[i]>100 吧

    2018-06-15 11:15:03

    共 1 条回复 >

  • 海边的卡夫
    2018-06-12 10:50:05
    1. 首先 int count=0 要在方法内部定义。

    2.   根据数组的语法,数组最后一位是它的长度-1,这里是for(int i=scores.length-1;i>=0;i--)

    3.  count ++;  条件应该在 下面if判断里

    4.   if(scores>0&&scores<100) 这里语法错误,  scores 是数组,而你for循环的是scores 里的每个元素 所以应该是scores[i].

    5. 这里输出的应该是  System.out.println(scores[i]) 而且 应该在第一个 if 判断内

    6. 第二if 不需要else ,而且判断条件应该是 ==,而不是= 。

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165172 学习 · 17581 问题

查看课程

相似问题