全部问题 > 当前问题

这个程序好像很多错误,但是我都找不到

#include<stdio.h>

int find(int x[],int t)

{

int left=0,mid,right=14;

while(left<=right)

{

mid=(left+right)/2;

if(t==x[mid]){return mid;}

else

{

if(t>[mid]){left=mid+1;}

else{right=mid-1;}

}

}

return -1;

}

main()

{

int a[15]={3,7,12,19,21,24,26,33,39,41,45,50,52,64,68};

printf("%d\n",find(a,52));

}


一只猪的感慨 2016-2-17 22:41:22

共 1 个回答

嘿嘿大人 2016-2-17 22:42:58

#include<stdio.h>


int find(int x[],int t)


{


int left=0,mid,right=14;


while(left<=right)


{


mid=(left+right)/2;


if(t==x[mid]){return mid;}


else


{


if(t>x[mid]){left=mid+1;}


else{right=mid-1;}


}


}


return -1;


}


main()


{


int a[15]={3,7,12,19,21,24,26,33,39,41,45,50,52,64,68};


printf("%d\n",find(a,52));


}


问题来自: 二分查找