[C言語]配列(Array)の最大値を取得するには?

C言語

どうも、ちょげ(@chogetarou)です。

配列(Array)の最大値を取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

配列(Array)の最大値を取得するには、forループを使います。

まず、最大値を格納するための変数を用意します。

変数は配列のインデックス「0」の要素で初期化します。

int max = array[0];

次に、for文で配列の要素数の回数だけループします。

ループ処理で配列の要素が最大値用の変数より大きければ、変数の値を要素に更新します。

//配列の要素数を取得
int length = sizeof(array) / sizeof(array[0]);

//配列の要素数の回数だけループ
for (int i = 0; i < length; i++) {
    //配列の要素が変数より大きければ値を更新
    if (array[i] > max) {
        max = arr[i];
    }
}

上記のforループで、用意した変数に配列の最大値が格納されます。

スポンサーリンク

使用例

使用例1

#include <stdio.h>
int main(void) {
    int numbers[6] = { 1, 2, 3, 10, 4, 5 };
    
    int max = numbers[0];
    int length = sizeof(numbers) / sizeof(numbers[0]);
    
    for (int i = 0; i < length; i++) {
        if (numbers[i] > max) {
            max = numbers[i];
        }
    }
    
    printf("%d", max);
    
    return 0;
}
出力:
10

使用例2

#include <stdio.h>

int findMax(int arr[], int n) {
    int max = arr[0];
    
    for (int i = 0; i < n; i++) {
        if (arr[i] > max) {
            max = arr[i];
        }
    }
    
    return max;
}

int main(void) {
    int numbers[6] = { 1, 2, 3, 10, 4, 5 };
    
    
    int length = sizeof(numbers) / sizeof(numbers[0]);
    
    int max = findMax(numbers, length);
    
    printf("%d", max);
    
    return 0;
}
出力:
10

コメント

タイトルとURLをコピーしました