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
提交
取消