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

不知道为什么输不出结果

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

        

        double arr[] = {89,-23,64,91,119,52,73};

        HelloWorld hello = new HelloWorld();

        hello.GetGrade(arr);

        

    }

    

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

    public void GetGrade(double array[]){

        int count=0;

        Arrays.sort(array);

        for(int i=array.length-1;i<0;i--){

            while(count<3){

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

                System.out.println(""+array[i]);

                count++;

                }

            }

            

        }

    }


正在回答

2 回答

非常感谢你提醒我了,改成这样也可以,不过我觉得上面那个i>array.length-3不太合适,因为并不能保证数组里的前3位成绩都是在[0-100]里面的,共勉共勉!

 for(int i=array.length-1;i>0;i--){       	
            if(count<3){
                if((array[i]>=0)&&(array[i]<=100)){
                System.out.println(""+array[i]);
                count++;               
                }
            }


0 回复 有任何疑惑可以回复我~
public void GetGrade(double array[]){
        Arrays.sort(array);
        for(int i=array.length-1;i>=array.length-3;i--){
            System.out.print(array[i] + " ");
        }
    }

你代码里的i<0就是一个逻辑错误了,还有你压根不需要在搞个while循环

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

举报

0/150
提交
取消

不知道为什么输不出结果

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