为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的不显示成绩??

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 hello=new HelloWorld();

        

       hello.stuScore(scores);

        

        

        

    }

    

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

    

    

    public void stuScore(int scores[]){

      Arrays.sort(scores);

       int count=0;

          for(int i=scores.length-1;i>=0&&count<3;i--){

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

            continue;

          count++;

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

    }

    

 

    

    

    

    }

    

}


正在回答

6 回答

你好,我想知道这个num<3这里是怎么计算的

0 回复 有任何疑惑可以回复我~

import java.util.Arrays;

public class HelloWorld {
    
    //完成 main 方法
    public static void main(String[] args) {
        HelloWorld hello = new HelloWorld();
        int[] scores = {89,-23,64,91,119,52,73};
        System.out.println("考试成绩的前三名为:");
        hello.getFirstThree(scores);
    }
    
    //定义方法完成成绩排序并输出前三名的功能
    public void getFirstThree(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;
            }
            System.out.println(scores[i]);
            
            count++;
            if(count>2){
                break;
            }
        }
    }
}

0 回复 有任何疑惑可以回复我~

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

        

        HelloWorld hello = new HelloWorld();

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

        hello.sortPrintThree(scores);

    }

    

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

    

    public void sortPrintThree(int[] scores){

        Arrays.sort(scores);

        int arrayLength = scores.length;

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

        for(int i = arrayLength-1 ;i >= arrayLength-3;i--){

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

        }

    }

}


0 回复 有任何疑惑可以回复我~

if(scores[i]>0||scores[i]<100)循环体错了   ,应该是:if(scores[i]<0 || scores[i]>100)

1 回复 有任何疑惑可以回复我~
#1

布依

上面没错。
2019-04-13 回复 有任何疑惑可以回复我~

i>=0&&count<3条件错了,scores.length-1大于3所以就跳出循环

0 回复 有任何疑惑可以回复我~

for (int i=scores.length-1;i>=0;i--){
              if(scores[i]<0||scores[i]>100){
                  continue;
              }
             
              sum++;
              if(sum>3){
                  break;
              }
              System.out.print("考试前三名为:");
     System.out.println(scores[i]);
          }
         

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我的不显示成绩??

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信