亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我的本意是用返回類型為int[]去做,結果遍歷的數組halo只是把排序后的元素輸出出來了,如if語句都未執行

我的本意是用返回類型為int[]去做,結果遍歷的數組halo只是把排序后的元素輸出出來了,如if語句都未執行

慕粉Javacoder 2016-06-03 20:24:19
//功能:import java.util.Arrays;public class HelloWorld {? ??? ? //完成 main 方法? ? public static void main(String[] args) {? ? ? ? ? HelloWorld hello=new HelloWorld();? ? ? ? int[] scores={89,-23,64,91,119,52};? ? ? ? System.out.println("考試前三名為:");? ? ? ? ?int[] halo=hello.sort(scores);? ? ? ? ?? ? ? ? for(int j:halo){? ? System.out.println(j);? ? }? ? ? ? ?? ? }? ??? ??? ? //定義方法完成成績排序并輸出前三名的功能? ? public int[] sort(int[] scores ){? ? ? ? int count=0;? ? ? ? Arrays.sort(scores);? ? ? ? //for循環應從后往前開始遍歷? ? ? ? for(int i=scores.length-1;i>=0;i--){? ? ? ? //判斷數組中的參數是否有效? ? ? ? ? ? if(scores[i]<0||scores[i]>100)?? ? ? ? ? ? ? ? continue;? ? ? ? ? ? ? ? count++;? ? ? ? ? ? if(count>3) break;? ? ? ? ?? ? ? ? }? ? ? ? ? ? ? return scores;? ? ??? ? }?}
查看完整描述

1 回答

已采納
?
王大厲

TA貢獻58條經驗 獲得超11個贊

看錯了 ?你返回的是排完序的數組 ? ?

?if(scores[i]<0||scores[i]>100)?

? ? ? ? ? ? ? ? continue;

? ? ? ? ? ? else{

? ? ? ? ? ? count++;

? ? ? ? ? ? if(count>3)?

? ? ? ? ? ? ? ? ? break;

? ? ? ? ? ? ? System.out.println(scores[i]);

? ? ? ? ? ? }

這樣輸出的是前三 ?你返回的是排完序的?scores數組


查看完整回答
反對 回復 2016-06-03
  • 慕粉Javacoder
    慕粉Javacoder
    代碼能執行的 只是執行出的結果 不是考試的前三名而是 排序后的數組的元素不知道哪里錯了 而且if條件句好像沒有執行
  • 王大厲
    王大厲
    我修改了 你再看看
  • 慕粉Javacoder
    慕粉Javacoder
    謝謝,這個的確可以 但是我的返回類型是int【】 代碼塊結尾的return 我應該怎么讓他返回有前三名的數組呢。 直白點就是 return后面我應該加什么
點擊展開后面1
  • 1 回答
  • 0 關注
  • 1294 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號