014 java一維數組求最大值與最小值


例1:求最高分與最低分。

求最大值與最小值的思想是:就像是打擂台那樣,最開始擂台上站着最厲害/最小的一個叫max/min,然后其他人都來跟這個max/min比較打擂台,輸了的那個就下台,所以擂台上能夠始終保持最大/最小的那個數。

步驟:首先把數組的第一個數賦值給變量max和min,分別表示最大值和最小值,

再依次將數組的其他數值與當前的max和min進行比較,如果比當前的大/小,就替換掉

知道數組最后一個值比較完,最后輸出最大值和最小值。

public class Example{
    public static void main(String[] args) {
        int score[] = { 67, 89, 87, 69, 90, 100, 75, 90 }; // 初始化數組
        int max = 0; // 定義變量保存到最大值
        int min = 0; // 定義變量保存到最小值
        max = min = score[0]; // 把第1個元素的內容賦值給max和min
        for (int x = 0; x < score.length; x++) { // 循環求岀最大和最小
            if (score[x] > max) { // 依次判斷后續元素是否比max大
                max = score[x]; // 如果大則修改max內容
            }
            if (score[x] < min) { // 依次判斷后續的元素是否比min小
                min = score[x]; // 如果小,則修改min內容
            }
        }
        System.out.println("最高成績:" + max); // 輸出最大值
        System.out.println("最低成績:" + min); // 輸出最小值
    }
}

例2:統計商品信息。

在一個貨架上有 5 件商品,編寫程序,在輸入商品價格之后輸出最高價格、總價格和平均價格。

首先要創建一個包含 5 個空元素的價格數組,然后使用 for 循環使用戶從控制台錄入商品的價格,並將價格保存至數組中,再使用一個 for 循環來遍歷該數組,求出最高價格和總價格。最后用總價格除以商品數量算出平均價格。

接收數值:

for (int i = 0; i < 5; i++) {
        prices[i] = input.nextInt(); // 循環向數組中元素賦值
    }

求和思想:for循環遍歷數組每一個元素並將其相加,結果保存在sum中。

求平均值思想:平均值=總和/數組中的元素個數(可以用數組名.length表示)

public static void main(String[] args) {
    // 聲明數組
    int[] prices = new int[5];
    int maxPrice = 0, avgPrice = 0, sumPrice = 0;
    Scanner input = new Scanner(System.in);
    System.out.println("請輸入5件商品的價格:");
    for (int i = 0; i < 5; i++) {
        prices[i] = input.nextInt(); // 循環向數組中元素賦值
    }
    // 計算價格最大值
    maxPrice = prices[0]; // 假設最大值為第一個元素
    for (int index = 1; index < prices.length; index++) {
        sumPrice += prices[index]; // 匯總價格
        if (prices[index] > maxPrice) {
            maxPrice = prices[index];
        }
    }
    // 平均價格=總價格/商品數量
    avgPrice = sumPrice / prices.length;
    System.out.println("本貨架上商品的總價格為:" + sumPrice + " 平均價格為:" + avgPrice + " 最高價格為:" + maxPrice);
}

該程序運行后的結果如下所示。

請輸入5件商品的價格:
88
64
44
62
79
本貨架上商品的總價格為:249 平均價格為:49 最高價格為:88

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM