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

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

8-1編程遇到的問題

各位大神,為啥我把 int num=0 ; 寫在循環體里面輸出的結果卻是?

考試成績前三名的是:?

91

?89?

73?

64?

52?

請各位大神指點迷津、、感激不盡,下面是我寫的代碼


import java.util.Arrays;

public class HelloWorld {

? ? //完成 main 方法

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

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

? ? ? ? System.out.println("考試成績前三名的是:");

? ? ? ? HelloWorld threeMax= new HelloWorld;

? ? ? ? threeMax.getMaxThree(scores);

? ? }

? ? //定義方法完成成績排序并輸出前三名的功能

? ? public void getMaxThree(int[] arr){

? ? ? ? Array.sort(arr);

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

? ? ? ? ? ? int num=0;//記錄第幾名

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

? ? ? ? ? ? ? ? System.out.println("輸入的成績無效");

? ? ? ? ? ? ? ? continue;

? ? ? ? ? ? }

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

? ? ? ? ? ? num++;

? ? ? ? ? ? if(num>3)

? ? ? ? ? ? ? ? break;

? ? ? ? }

? ? }

}


正在回答

2 回答

可以單步執行調試下,或者加個輸出語句把 num最后結果輸出一下就明白了

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

你把int num=0寫進for循環里,for循環每執行一次,num=0;

也就是說,第一次num=0,執行一次for循環num++=1;

第二次for循環時候num=0;執行完num++=1;

num永遠是0和1

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

舉報

0/150
提交
取消
Java入門第一季(IDEA工具)升級版
  • 參與學習       1167478    人
  • 解答問題       18748    個

0基礎萌新入門第一課,從Java環境搭建、工具使用、基礎語法開始

進入課程

8-1編程遇到的問題

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

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

幫助反饋 APP下載

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

公眾號

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