下面是一個(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 未找到
。