全部问题 > 当前问题

有什么问题

#include<stdio.h>

int fu(int a[],int n)

{

int left,right,mid;

left=0;right=9;

while(left<=right)

{

mid=(left+right)/2;

if(a[mid]>n)

right=mid-1;

else

if(a[mid]<n)

left=mid+1;

else

printf("%d",mid);

}

printf("-1");

}

main()

{

int a[10]={3,5,9,4,1,5,55,33,44,88},n;

printf("输入要找的数字:");

scanf("%d",&n);

fu(a,n);

}


多读书多看报 2017-3-12 16:18:25

共 2 个回答

qqq 2017-3-12 21:43:46

你这个代码吧。。大思路是对的。。但太多细节有问题了。。我都不知道咋给你改。。

你还是自己回去再好好看看视频,视频里有完整代码的啊。。

而且同学,你还不知道二分查找的前提就是数组要按序排列吗???


多读书多看报 2017-3-13 12:56:17

回复 qqq:好的  谢谢~

问题来自: 二分查找