利用二分法从有序表中查找某个数值-C语言

/**二分法查找有序表(从小到大)中的某个值**/
#include 
#include 

int binary_search(int key, int *a, int n)
{
    int i,low,high,mid,count=0;
    low = 0;
    high = n-1;
    while(lowa[mid])//key值大于中间值时
        {
            low = mid + 1;//确定右字表的范围
        }
        else if(key == a[mid])//key值等于中间值时
        {
            printf("查找成功!\n第%d次查找成功!\na[%d]=%d\n", count, mid, a[mid]);
            count1++;
            break;
        }
    }
    if (0==count1)
    {
        printf("查找失败!\n");
    }
    return 0;
}

int main()
{
    int i,j,len,key=0;
    int *a;
    printf("请输入需要查找的序列元素的个数:\n");
    scanf("%d", &len );
    a = (int *)malloc(sizeof(int) * len);
    printf("请输入需要查找的序列:\n");
    for(i=0;i

你可能感兴趣的:(C&C++)