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 回答
阿旭_
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]);
}
}
}
添加回答
举报
0/150
提交
取消
