#include<stdio.h>
int seqSearch(int arr[], int n, int k);
void input();
int main()
{
input();
return 0;
}
void input()
{
int arr[10];
int n, i, k;
scanf("%d", &n);
for (i = 0; i < n; i++)
{
scanf("%d", &arr[i]);
}
printf("请输入你要查找的数字:\n");
scanf("%d", &k);
if (seqSearch(arr, n, k)==0)
{
printf("很抱歉,没有找到!\n");
}
else
{
printf("找到啦!位置为%d\n",seqSearch(arr,n,k));
}
}
int seqSearch(int arr[], int n, int k)
{
int i;
for (i = 0; i < n; i++)
{
if (arr[i] == k)
{
break;
}
}
if ( i==n )
{
return 0;//查找失败,返回标志0
}
else
{
return (i + 1);//查找成功,返回记录的序号
}
}
顺序查找,就是逐行扫描,我先假设要查找的关键字等于第一个数组值,如果恰好相等,那么久终止循环,否则继续判断,如果从0开始扫描到结尾了,都没有与之相等的值,那么就返回一个错误状态,否则给出正确状态(一般是给出索引值);
原文:https://www.cnblogs.com/qq1480040000/p/14724685.html