どうも、ちょげ(@chogetarou)です。
配列(Array)の最小値を取得する方法を紹介します。
方法

配列(Array)の最小値を取得するには、forループを使います。
まず、最小値を格納するための変数を用意します。
変数は配列のインデックス「0」の要素で初期化します。
int min = array[0];
次に、for文で配列の要素数の回数だけループします。
ループ処理で配列の要素が変数より小さければ、変数の値を配列の要素に更新します。
//配列の要素数を取得
int length = sizeof(array) / sizeof(array[0]);
//配列の要素数の回数だけループ
for (int i = 0; i < length; i++) {
//配列の要素が変数より小さければ変数の値を更新
if (array[i] < min) {
min = arr[i];
}
}
上記のforループで、用意した変数に配列の最小値が格納されます。
使用例
使用例1
#include <stdio.h>
int main(void) {
int numbers[5] = { 1, 2, -10, 4, -5 };
int length = sizeof(numbers) / sizeof(numbers[0]);
int min = numbers[0];
for (int i = 0; i < length; i++) {
if (numbers[i] < min) {
min = numbers[i];
}
}
printf("%d", min);
return 0;
}
出力:
-10
使用例2
#include <stdio.h>
int findMin(int arr[], int n) {
int min = arr[0];
for (int i = 0; i < n; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
return min;
}
int main(void) {
int numbers[5] = { 1, 2, -10, 4, -5 };
int length = sizeof(numbers) / sizeof(numbers[0]);
int min = findMin(numbers, length);
printf("%d", min);
return 0;
}
出力:
-10
コメント