如圖 不明白為什么
import java.util.*;
public class HelloWorld {
? ??
? ? //完成 main 方法
? ? public static void main(String[] args) {
? ? ? ??
? ? ? ? int[] scores={89,-23,64,91,119,52,73};
? ? ? ? int[] score1;
? ? ? ? HelloWorld sorts=new HelloWorld();
? ? ? ? score1=sorts.getArrays(scores);
? ? ? ? System.out.println("考試成績(jī)的前三名為:\n"+
? ? ? ? score1[0]+score1[1]+score1[2]);
? ? ? ??
? ? }
? ??
? ? //定義方法完成成績(jī)排序并輸出前三名的功能
? ??
? ? static int[] getArrays(int[] scores){
? ? ? ? int[] score2;
? ? ? ? Arrays.sort(scores);
? ? ? ? score2=scores;
? ? ? ? int[] score3={0,0,0};
? ? ? ? int cout=0;
? ? ? ? for(int i=score2.length;i>=0;i++){
? ? ? ? ? ? if(score2[i]>100&&score2[i]<0)
? ? ? ? ? ? continue;
? ? ? ? ? ? cout+=1;
? ? ? ? ? ? score3[cout-1]=score2[i];
? ? ? ? ? ? ?if(cout>3)
? ? ? ? ? ? ?break;
? ? ? ? ? ??
? ? ? ? }
? ? ? ? return score3;
? ? ? ??
? ? }
? ??
? ??
? ??
? ??
? ??
? ??
? ??
? ??
? ??
}
2016-04-29
?for(int i=score2.length;i>=0;i++){????????//這里應(yīng)該是 i--; ?因?yàn)锳rrays是升序排列,這里成績(jī)前三需要將升序排????????????????????????????????????????????????????????????????????????列后的數(shù)組倒著排序,這樣scores2的前三個(gè)元素才是前三名。
? ? ? ? ? ? if(score2[i]>100&&score2[i]<0)
? ? ? ? ? ? continue;
? ? ? ? ? ? cout+=1;
? ? ? ? ? ? score3[cout-1]=score2[i];
? ? ? ? ? ? ?if(cout>3)
? ? ? ? ? ? ?break;
? ? ? ? ? ??
? ? ? ? }