#include<stdio.h>
int main()
{
int n,i,x,m,k=0;
printf("n=");
scanf("%d",&n);
int a[n],l=0,r=n-1;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("x=");
scanf("%d",&x);
printf("\n");
if(x>=a[l]&&x<=a[r])
while(k==0&&l<=r)
{
m=(l+r)/2;
if(x==a[m])
k=1;
else if(x<a[m])
r=m-1;
else
l=m+1;
}
if(k==1)
printf("m=%d\n",m);
else
printf("NOT FOUND\n");
return 0;
}
折半查找第一行输入一个整数n,表示有序元素个数,接下来输入一行n个数字,依次代表元素值,然后输入x,表示要查找的值 如果没有找到就输出NOT FOUND
最新推荐文章于 2023-10-24 18:22:35 发布