二分法求解的问题(为什么输出有问题)

#include
int search(int k,int number[],int length)
{
int ret=-1;
int left=0;
int right=length-1;
int mid=(left+right)/2;
if (number[mid]>k)
right=mid-1;
else if(number[mid]
left=mid+1;
else(number[mid]=k);
return mid;
return ret;
}
int main(){
int number[]={1,2,3,4,5,6,7,8,9,10};
int k=11;
int length=sizeof(number)/sizeof(number[0]);
int a=search(k,number,length);
if(a==-1)
{
printf("找不到指定的数字\n");
}
else
{
printf("找到该数下标为:%d\n",a);
}
return 0;
}

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^