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

求大神那里错了?

求大神那里错了?

慕粉3743994 2016-08-09 01:27:33
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]);        }        }
查看完整描述

2 回答

已采纳
?
JustWannaHugU

TA贡献452条经验 获得超796个赞

同学你好。

这段代码思路正确,细节方面有两个错误。

  1. 第一行导包错误,until改为util即可

  2. 代码最后少了一个 }

  3. 如果解决,谢谢采纳!

查看完整回答
反对 回复 2016-08-09
?
阿旭_

TA贡献217条经验 获得超353个赞

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]);
		}
	}
}

//img1.sycdn.imooc.com//57a9248e0001dbe202490196.jpg

查看完整回答
反对 回复 2016-08-09
  • 2 回答
  • 0 关注
  • 1388 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信