#include<stdio.h>
int Binarysearch(int array[],int target,int num){
int counter=0;
int first=0;
int last=num-1;
while(first<=last){
counter++;
int mid=(first+last)/2;
if(target>array[mid]){
first=mid+1;
}
else if(target<array[mid]){
last=mid-1;
}
else{
printf("查找次数为:%d\n",counter);
return 1;
}
}
printf("查找次数为:%d\n",counter);
return 0;
}
int main(){
int array[10]={1,2,3,4,5,6,7,8,9,10};
int target;
int flag=0;
while(1){
printf("请输入要查找的数字:\n");
scanf("%d",&target);
flag=Binarysearch(array,target,10);
if(flag){
printf("已找到该数字!!\n");
}
else{
printf("未找到该数字!!\n");
}
}
return 0;
}