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

感觉逻辑对的呀,实在找不出错误啊..........


import java.util.Arrays;


public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

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

       HellWorld hello =new HelloWorld(); 

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

       hello.rank(scores);

        

    }

}

    

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

    public void rank(int[] scores){

        Arrays.sort(scores);

        int num = 0;

        while(num<3){

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

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

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

                    num++;

                }

            }

        }

    }

 

正在回答

2 回答

https://img1.sycdn.imooc.com//5b47120e0001c60a05470082.jpg这里应该是成绩小于0或者成绩大于100,故写法应该为:scores[i]<0 || socres[i]>100,0分与100都是正常分数,正常逻辑来讲,不应该写为小于等于或者大于等于。

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

你的循环是错的。

当你的for循环做完后, 你的num 肯定是大于3 的了。

因为是要先做for循环,当你的scores 是100 和0 之内, 打印出score[i] , 并且Num ++ , 做完这个循环之后检查while循环, 所以你就会打印出全部的Scores了。 


我的代码:

import java.util.Arrays;

public class HelloWorld {

    //完成 main 方法

    public static void main(String[] args) 

    {

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

        HelloWorld a = new HelloWorld();

        

        System.out.println("The top three grades of this exam are: ");

        

        Arrays.sort(scores);

        a.sort(scores);

        

    }

    

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

    void sort(int scores[])

    {

        int available = 1;

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

        {

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

            { 

                continue;

            }

            

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

            available++;

            

            if(available > 3)

            {

                break;

            }

        }

    }


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

举报

0/150
提交
取消

感觉逻辑对的呀,实在找不出错误啊..........

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