C++陣列找最大值

在C++中,可以使用標準庫中的 std::max_element 算法來找出陣列中的最大值。以下是一個簡單的範例:

#include <iostream>
#include <algorithm> // 包含 std::max_element
#include <vector> // 使用 vector 陣列

int main() {
    std::vector<int> array = {1, 2, 3, 4, 5}; // 創建一個 vector 陣列
    auto max_element = std::max_element(array.begin(), array.end()); // 找出最大值的位置
    int max_value = *max_element; // 取出最大值

    std::cout << "The maximum value in the array is: " << max_value << std::endl;

    return 0;
}

在上面的程式碼中,我們使用 std::max_element 算法來找出陣列 array 中的最大值。這個算法會返回一個疊代器,指向陣列中的最大值。我們將這個疊代器賦值給 max_element 變數,然後使用 * 運運算元來取出最大值並賦值給 max_value 變數。最後,我們輸出 max_value 變數的值。

如果你想要使用傳統的迴圈來找出最大值,你可以這樣做:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> array = {1, 2, 3, 4, 5};
    int max_value = array[0]; // 初始化最大值為陣列的第一個元素

    for (int i = 1; i < array.size(); ++i) { // 遍歷整個陣列
        if (array[i] > max_value) { // 檢查當前元素是否大於最大值
            max_value = array[i]; // 如果大於,更新最大值
        }
    }

    std::cout << "The maximum value in the array is: " << max_value << std::endl;

    return 0;
}

在這個範例中,我們使用了一個迴圈來遍歷整個陣列,並使用一個迴圈變數 i 來存取每個元素。我們初始化 max_value 變數為陣列的第一個元素,然後檢查每個元素是否大於 max_value。如果大於,我們更新 max_value 變數。最後,我們輸出 max_value 變數的值。