C言語を使って順次検索アルゴリズムを実装する方法は何ですか。

C言語を使用して実装された順次検索アルゴリズムのサンプルコードが以下にあります。

#include <stdio.h>

int sequentialSearch(int arr[], int n, int key) {
  for (int i = 0; i < n; i++) {
    if (arr[i] == key) {
      return i; // 返回找到的元素的索引
    }
  }
  return -1; // 返回-1表示未找到
}

int main() {
  int arr[] = {3, 5, 2, 4, 1};
  int n = sizeof(arr) / sizeof(arr[0]);
  int key = 4;
  
  int index = sequentialSearch(arr, n, key);
  
  if (index != -1) {
    printf("元素 %d 在数组中的索引为 %d\n", key, index);
  } else {
    printf("元素 %d 未找到\n", key);
  }
  
  return 0;
}

このプログラムは、まず、配列、配列のサイズ、および検索するキーをパラメータとして受け取るsequentialSearch関数を定義します。この関数は、forループを使用して配列内の各要素を走査し、キーと一致する要素が見つかった場合、その要素のインデックスを返します。ループが終了しても一致する要素が見つからない場合、-1を返して見つからなかったことを示します。

main関数では、整数の配列arrと配列のサイズn、および検索するキーワードkeyを定義しました。そして、sequentialSearch関数を呼び出して、キーワードの配列内のインデックスを検索し、返されたインデックスに基づいて適切なメッセージを印刷します。

プログラムを実行すると、配列内の要素4のインデックスが3であることが表示されます。キーワード4が配列内のインデックス3にあることを示します。配列内にキーワードが見つからない場合、要素4が見つかりませんと表示されます。

bannerAds