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

為了賬號安全,請及時綁定郵箱和手機立即綁定

輸出結果個數

import?java.util.Arrays;
public?class?HelloWorld?{
????
????//完成?main?方法
????public?static?void?main(String[]?args)?{
?????int[]?scores={89,-23,64,91,119,52,73};??
?????HelloWorld?hello=new?HelloWorld();
?????hello.input(scores);
????}
????
????//定義方法完成成績排序并輸出前三名的功能
????public?void?input(int[]?scores)
????{
????????Arrays.sort(scores);
????????int?num=0;
?????????for(int?i=scores.length-1;i>=0;i--)
?????????{
?????????????if(scores[i]>0&&scores[i]<100)
????????????????num++;
?????????????if(num<3)
????????????????System.out.println(scores[i]);
?????????}
????}
}
要輸出三個成績呢??為啥我覺得應該是num<=3,變量跟蹤也覺得是這樣啊


正在回答

3 回答

你初始化的num=0 這 if判斷3次 ?num=0 ,1 , 2 就會輸出前3的成績 改成num<=3 則會輸出四個成績!

你可以初始化num=1 if(num<=3),這樣就是3個成績了!

0 回復 有任何疑惑可以回復我~
#1

天啟之魂

不好意思 剛才沒仔細看代碼 你代碼有問題 我回答錯了
2015-08-05 回復 有任何疑惑可以回復我~
#2

想的美但長得丑 提問者 回復 天啟之魂

哪塊有問題啊
2015-08-05 回復 有任何疑惑可以回復我~
#3

想的美但長得丑 提問者 回復 天啟之魂

發現了 我那個if條件表達式也有問題
2015-08-05 回復 有任何疑惑可以回復我~

import java.util.Arrays;

public class HelloWorld {

? ? public static void main(String[] args) {

? ? ?int[] scores={89,-23,64,91,119,52,73}; ?

? ? ?HelloWorld hello=new HelloWorld();

? ? ?hello.input(scores);

? ? }

? public void input(int[] scores)?{

? ? ? ? Arrays.sort(scores);

? ? ? ? int num=0;

? ? ? ? ?for(int i=scores.length-1;i>=0;i--){

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

? ? ? ? ? ? ? ? num++;

? ? ? ? ? ? ?if(num<=3)

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

????????????}

? ? ? ? ?}

? ? }

}

代碼改成這樣 兩個if 改成鑲嵌式 第一個if 成立時再執行第二個if 就沒問題了

1 回復 有任何疑惑可以回復我~

不應該是 判斷119時 num+1=1;91時等于2;89時等于3嗎

0 回復 有任何疑惑可以回復我~
#1

天啟之魂

應該是判斷119是 if 不成立 什么都不執行 進行下個元素的判斷
2015-08-05 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

輸出結果個數

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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