猿问

求大神那里错了?

import java.until.Arrays;

public class HelloWorld {

    

    //完成 main 方法

    public static void main(String[] args) {

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

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

        HelloWorld hello=new HelloWorld();

        hello.big3(scores);

        

    }

    

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

    public void big3(int[]scores)

    {

       Arrays.sort(scores);

    int num=0;

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

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

             continue;

             num++;

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

        }  

      }


慕粉3743994
浏览 1389回答 2
2回答

JustWannaHugU

同学你好。这段代码思路正确,细节方面有两个错误。第一行导包错误,until改为util即可代码最后少了一个 }如果解决,谢谢采纳!

阿旭_

package com.abc.ccc; public class HelloWorld { // 完成 main 方法 public static void main(String[] args) { int[] scores = { 89, -23, 64, 91, 119, 52, 79 }; System.out.println("本次考试前三名是"); HelloWorld hello = new HelloWorld(); hello.big3(scores); } // 定义方法完成成绩排序并输出前三名的功能 public void big3(int[] scores) { int[] indexArr = new int[scores.length];// 最在的原位置下标 for (int i = 0; i < indexArr.length; i++) { indexArr[i] = i; } int num = 0;// for (int i = 0; i < 3; i++) {// 第三次 /* 利用直接选择排序解决,找到当前最大的 */ for (int j = i + 1; j < scores.length; j++) { if (scores[i] < scores[j]) { /* 开始交换原位置 */ num = indexArr[i]; indexArr[i] = indexArr[j]; indexArr[j] = num; /* 开始交换值 */ num = scores[i]; scores[i] = scores[j]; scores[j] = num; } } /* 打印输出 */ System.out.println("第" + (indexArr[i] + 1) + "个人." + "分数:" + scores[i]); } } }
随时随地看视频慕课网APP

相关分类

Java
我要回答