二分法查找,进来帮帮我吧
a[10]={-3,-2,0,1,1,1,1,5,7,9} 这个数组内用二分法查找1的个数。我写的x=1
int search(int a[],int x)
{
int left=0,right=n-1,mid,l=0;
while(left<right)
{
mid=(left+right)/2;
if(a[mid]==x)
{
l++;
}
else if(a[mid]>x)
right=mid-1;
else left=mid+1;
}
return l;
}
应该怎么写?本人新手,请用C语音写,谢谢