没做出来,希望指导
import java.util.Arrays; public class HelloWorld { //完成 main 方法 public static void main(String[] args) { int[] scores = {89 , -23 , 64 , 91 , 119 , 52 , 73}; printThree(scores); } //定义方法完成成绩排序并输出前三名的功能 public static void printThree(int[] scores){ System.out.println("考试成绩的前三名为:"); Arrays.sort(scores); int count = 0; for(int i = scores.length - 1; i >= 0;i--){ if(!(scores[i] > 100 || scores[i] < 0)){ count ++; System.out.println(scores[i]); } if(count == 3){ break; } } }
其实就是先对成绩数组按成绩从小到大排序,然后输出最后三个,就是排名前三的成绩了。
先对数进行从小到大的排序,然后截取后三位(就是最大三位的数)。
排序好后下一步就是对数字从最后一位开始判断数是否在0-100之间 然后再把满足条件的后三位输出来
不是说判断成绩最高的三个吗.先通过sort降序取出来有效成绩的前三个直接打印出来就行了
一开始是在想怎样判断出前三个数,及怎样保存判断出的三个数。后来看了答案,答案是直接打印出来的判断出的成绩。