English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

以下有一程式想請教一下各位大大們,為何他的最後的值是18,各程式執行內容為何?謝謝!!
public class app7_5
{
public static void main(String args[])
{
int score[]={9,14,6,18,2,10}; // 宣告一維陣列score
largest(score); // 將一維陣列score傳入largest() method
}


public static void largest(int arr[])
{
int max=arr[0];
for(int i=0;i if(max max=arr[i];
System.out.println("largest num = "+max);
}
}

2006-12-03 15:24:56 · 1 個解答 · 發問者 曉天 1 in 電腦與網際網路 程式設計

1 個解答

public static void main(String args[])
{
int score[]={9,14,6,18,2,10}; // 宣告一維陣列score 有6個元素,所以他的length=6
largest(score); // 將一維陣列score傳入largest() method
}

以下這個在做數值比較
public static void largest(int arr[]) {
int max=arr[0]; //這行是說把arr[0]的值也就是9放到max並同時宣告max為int型態
for(int i=0;i if(max max=arr[i]; 如果上面成立 就會把大的數值 放到max 裡面
System.out.println("largest num = "+max); 最後程式印出最大值
}
}
..........................max arr[i]
i=0第一次比較 9 跟 9 比較 所以 false
i=1第一次比較 9 跟 14 比較 所以 true 所以max=14
i=2第一次比較 14 跟 6 比較 所以 false
i=3第一次比較 14 跟 18 比較 所以 true 所以max=18
i=4第一次比較 18 跟 2 比較 所以 false
i=5第一次比較 18 跟 10 比較 所以 false
i=6 離開for迴圈
執行印出最大值max=18

2006-12-03 19:28:56 · answer #1 · answered by ANDY 2 · 0 0

fedest.com, questions and answers