在整形有序数组中查找想要的数据,找到了返回下标值,找不到返回-1
但是并没有运行出来
#include <stdio.h>
#include <windows.h>
#pragma warning (disable:4996)
int main(){
int mid = 0;
int i = 0;
int a[10];
printf("Enter ten numbers of array:\n");
for (; i < 10; i++){
scanf("%d", &a[i]);
}
int right = a[9], left = a[0];
int key;
printf("Enter a num:");
scanf("%d", &key);
while (left <= right){
mid = left + (right - left) / 2;
if (a[mid] > key){
left = mid - 1;
}
else if (a[mid] < key){
right = mid + 1;
}
else{
printf("Find successfully!%d\n", mid);
break;
}
return -1;
}
system("pause");
return 0;
}