#include<stdio.h>
int divdeFind(int list[],int k,int i)
{
int left=0;
int right=i-1;
int mid;
while(right>=left)
{
mid=(left+right)/2;
if(k==list[mid])
return list[mid];
if(k>list[mid])
left=mid+1;
if(k<list[mid])
right=mid-1;
}
return -1;
}
int main()
{
int list[10];
int i=0;
int j=0;
int k=0;
int a=0;
printf("找哪一个数:\n");
scanf("%d",&k);
printf("数组一共有多少个数:\n");
scanf("%d",&a);
printf("挨个输出来:\n");
for(i=0;i<a;i++)
{
scanf("%d",&list[i]);
}
printf("输完了");
j=divdeFind(list,k,a);
if(j==-1)
printf("your found is false");
else
printf("having a number in this list");
return 0;
}
c语言最简单二分查找完整版
最新推荐文章于 2024-08-02 00:40:41 发布