怎么用c語(yǔ)言實(shí)現(xiàn)順序查找算法

小億
106
2024-01-04 16:29:40

下面是一個(gè)使用C語(yǔ)言實(shí)現(xiàn)順序查找算法的示例代碼:

#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 在數(shù)組中的索引為 %d\n", key, index);
  } else {
    printf("元素 %d 未找到\n", key);
  }
  
  return 0;
}

這個(gè)程序首先定義了一個(gè)sequentialSearch函數(shù),該函數(shù)接受一個(gè)數(shù)組、數(shù)組大小和要查找的關(guān)鍵字作為參數(shù)。它使用一個(gè)for循環(huán)遍歷數(shù)組中的每個(gè)元素,如果找到了與關(guān)鍵字匹配的元素,它將返回該元素的索引。如果在循環(huán)結(jié)束后未找到匹配的元素,則返回-1表示未找到。

main函數(shù)中,我們定義了一個(gè)包含一些整數(shù)的數(shù)組arr,并確定了數(shù)組的大小n和要查找的關(guān)鍵字key。然后,我們調(diào)用sequentialSearch函數(shù)來(lái)查找關(guān)鍵字在數(shù)組中的索引,并根據(jù)返回的索引打印相應(yīng)的消息。

在運(yùn)行程序時(shí),它將輸出元素 4 在數(shù)組中的索引為 3,表示關(guān)鍵字4在數(shù)組中的索引為3。如果要查找的關(guān)鍵字不在數(shù)組中,則輸出元素 4 未找到

0