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

................

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

    

     //定义数组并赋值

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

     //实例化HelloWorld对象

     HelloWorld hw=new HelloWorld();

     hw.chengji(scores);

        

    }

    

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

    public void chengji(int[] scores)

    {

        int j=0;//计数

        Arrays.sort(scores);

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

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

        {

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

            {

                continue;

            }

            j++;

            if(j<=3)

            {

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

            }

            

        }

    }

    

    

    

 


正在回答

2 回答


把你最后的输出语句换个地方,放在j++;哪里,最后if(j>2){

break;

}直接终止循环就可以得到你想要的结果了,j>2是判定排序好的数组的前三位。拿到前三位了就不需要继续遍历数组了

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

import java.util.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

    int []scores = {891,-23,64,91,119,252,79};    

    

    System.out.println(" 本次考试前三名是:");

    HelloWorld hello = new HelloWorld();        

    hello.big3(scores);    

    }

    

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

    

    public void big3(int [] scores)

    {

        Arrays.sort(scores);

           //无需循环输出数组最后三个元素即可

          int[] third_scores= {scores[scores.length-1],scores[scores.length-2],scores[scores.length-3]};

System.out.println(Arrays.toString(third_scores));

    }

    

}



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

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165905    人
  • 解答问题       17588    个

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

进入课程

................

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