為什么結(jié)果顯示“考試成績的前三名為:119”
import java.util.Arrays;
public class HelloWorld {
? ??
? ? //完成 main 方法
? ? public static void main(String[] args) {
? ? int scores[]={89,-23,64,91,119,52,73};
? ? System.out.println("考試成績的前三名為:");
? ? HelloWorld hello = new HelloWorld(); ? ?
? ? hello.top3(scores);
? ? ? ??
? ? ? ??
? ? }
? ??
? ? //定義方法完成成績排序并輸出前三名的功能
? ? public void top3(int scores[]){
? ? ? ? Arrays.sort(scores);
? ? ? ? int num = 0;
? ? ? ? for(int i = scores.length-1;i>=0;i--){
? ? ? ? ?while(scores[i]>0&&scores[i]<100)
? ? ? ? ?{
? ? ? ? ? ? continue;
? ? ? ? ?}
? ? ? ? ?num++;
? ? ? ? ?if(num>3)
? ? ? ? ?{
? ? ? ? ? ? ?break;
? ? ? ? ?}
? ? ? ? ? ?System.out.println(scores[i]);
? ? ? ? }
? ? ??
? ? } ??
}
2016-07-24
while里的判定條件不對,你把有效成績?nèi)颗帕?,你把while條件換成if(scores[i]>100||scores[i]<0)試試