//二分查找
//在一个有序数组查找具体的某个数
#include<stdio.h>
int search(int arr[], int x,int r)
{
int m = r - 1;
int n = 0;
int g = 0;
while (n<=m)
{
g = (m + n) / 2;
if (x > arr[g])
n = g + 1;
else if (x < arr[g])
m = g - 1;
else
return g;
}
}
int main()
{
int arr[] = { 1,2,3,4,5,6,7,8,9 };
int k = 7;
int h = 0;
int m = 0;
m =sizeof(arr)/sizeof(arr[0]);
h=search(arr,k,m);
printf("%d",h);
return 0;
}
10-10