下面是一个使用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 未找到
。