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);? ? ? ??? ? }? ??? ? //定義方法完成成績(jī)排序并輸出前三名的功能? ? 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 回答
已采納

JustWannaHugU
TA貢獻(xiàn)452條經(jīng)驗(yàn) 獲得超796個(gè)贊
同學(xué)你好。
這段代碼思路正確,細(xì)節(jié)方面有兩個(gè)錯(cuò)誤。
第一行導(dǎo)包錯(cuò)誤,until改為util即可
代碼最后少了一個(gè) }
如果解決,謝謝采納!

阿旭_
TA貢獻(xiàn)217條經(jīng)驗(yàn) 獲得超353個(gè)贊
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); } //?定義方法完成成績(jī)排序并輸出前三名的功能 public?void?big3(int[]?scores)?{ int[]?indexArr?=?new?int[scores.length];//?最在的原位置下標(biāo) for?(int?i?=?0;?i?<?indexArr.length;?i++)?{ indexArr[i]?=?i; } int?num?=?0;// for?(int?i?=?0;?i?<?3;?i++)?{//?第三次 /*?利用直接選擇排序解決,找到當(dāng)前最大的?*/ 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)?+?"個(gè)人."?+?"分?jǐn)?shù):"?+?scores[i]); } } }
添加回答
舉報(bào)
0/150
提交
取消