要求:数组中的值必须有序
#include<stdio.h>
int SearchMyPos(int* array,int arraylen,int data) {
int left = 0;
int right = arraylen - 1;
while (left <= right) {
int mid = (left + right) / 2;
if (array[mid] == data)
return mid;
if (array[mid] > data)
right = mid - 1;
if(array[mid]<data)
left = mid + 1;
}
return -1;
}
int main() {
int array[100];
for (int i = 0; i <100; i++)
array[i] = i+1;
int index = SearchMyPos(array,100,24);
if (index == -1)
printf("没找到!\n");
else
printf("下标为:%d", index);
return 0;
}