配列の中に数値があるかどうかを C 言語で判定する方法

C言語の場合、繰り返し構造と条件判断文を使えば、配列の中に特定の数があるかを調べることができます。具体的には、以下の手順で行います。

  1. 配列を宣言して値を代入する。
  2. 判断対象の数を格納するための変数を宣言します。
  3. ループ構造によって配列内の各要素を走査する。
  4. ループ中で、条件分岐を使って現在の要素が判定する番号と一致するかどうかを判定します。
  5. 同一の要素があるとき、それはその数が配列内に存在することを意味し、それに応じて処理を実行できます。
  6. 配列全体を走査しても一致する要素が見つからなければ、調べた数は配列に含まれていない。

サンプルコードを以下に示します。

#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int num = 3;
int i, flag = 0;
for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
if (arr[i] == num) {
flag = 1;
break;
}
}
if (flag == 1) {
printf("%d在数组中\n", num);
} else {
printf("%d不在数组中\n", num);
}
return 0;
}

このコードを実行すると、「3 は配列にあります」が出力されます。ただし、対象の数 num を別の数字(たとえば 6)に変更すると、出力は「6 は配列にありません」に変わります。

bannerAds