线性查找算法
1 #include <stdio.h> 2 #define ARRAYLEN 8 //静态查找表的元素 3 int source[ARRAYLEN]={69,65,90,37,92,6,28,54}; //静态查找表 4 int SeqSearch(int s[],int n,int key) 5 { 6 int i; 7 for(i=0;i<n&&s[i]!=key;i++) //循环查找关键字 8 ; 9 if(i<n) //在静态查找表中找到关键字 10 return i; 11 else 12 return -1; 13 } 14 int main() 15 { 16 int key,i,pos; 17 printf("\n请输入关键字:"); 18 scanf_s("%d",&key); 19 pos=SeqSearch(source,ARRAYLEN,key); 20 printf("原数据:\n"); 21 for(i=0;i<ARRAYLEN;i++) 22 printf("%d ",source[i]); 23 if(pos>=0) 24 printf("\n查找成功,该关键字位于%d个位置:",pos+1); //加1让位置显示从1开始 25 else 26 printf("\n查找失败!"); 27 return 0; 28 }
Coding