二分查找---C++实现

#include<iostream>
#include<stdio.h> 
#define N 10
using namespace std;

int main()
{
int a[N],front,end,mid,i,x;
cout<<"请输入已经排好的序列10个:"<<endl;
 
for(i=0;i<N;i++)
{
cin>>a[i];
}
cout<<"请输入要查询的数字x"<<endl;
cin>>x;
front=0;
end=N-1;
mid=(front+end)/2;
while(front<end&&a[mid]!=x)
{
if(a[mid]>x) end=mid-1;
if(a[mid]<x) front=mid+1;
mid=(front+end)/2;

  }
  if(a[mid]!=x)
  {
  printf("找不到该数字!");
 
}
else
{
printf("找到了,该数字在第%d位置",mid+1);
 } 
 
return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_39486027/article/details/79647428