int binsearch(int x, int v[], int n)
{
    int low, high, mid;

    low = 0;
    high = n - 1;
    while(low <= high){
        mid = (high+low)/2;
        if(x < v[mid]){
            high = mid - 1;
        }else if(x > v[mid]){
            low = mid + 1;
        }else{
            return mid;
        }
        printf("mid is %d\n",mid);
    }

    return -1;
}

int main(void)
{
    int v[] = {2,3,4,7,8,23,54,65,76};
    int ret = binsearch(7, v, sizeof(v)/sizeof(int));

    printf("%d,ret is %d\n", sizeof(v),ret);
    return 0;
}