遇到一难题,希望各位编程高手可以帮帮我,麻烦用c语言编一个可以运行的程序给我,非常感谢!拜托了! 10

判断一个数是否是数组中的成员(用二分法查找)已知数据a中一共有100个未排序的整数(由小到大排列)。现在从键盘上输入一个数,判断这个数是否是数组a中的数,如果是的话,打印... 判断一个数是否是数组中的成员(用二分法查找)
已知数据a中一共有100个未排序的整数(由小到大排列)。现在从键盘上输入一个数,判断这个数是否是数组a中的数,如果是的话,打印出此数在数组a中的位置来,否则打印“找不到“。
展开
 我来答
zdk66
2012-12-25 · 超过10用户采纳过TA的回答
知道答主
回答量:44
采纳率:0%
帮助的人:22.1万
展开全部
下面只是二分查找,再完善主函数就可以了
int found(int key,int a[]) //key为要查找的数,
{
int *low,*mid,*high;

high=a+99;

low=a;
while(low<=high)

{

mid=(low+high)/2;

if(key==*mid)

return mid;
else if(key<*mid)

high=mid-1;

else if(key>*mid)

low=mid+1;

}
printf("找不到“);
return -1;
}
感冒九十九
2012-12-26 · TA获得超过113个赞
知道小有建树答主
回答量:260
采纳率:0%
帮助的人:100万
展开全部
我想你应该在实现二分法查找时先进行一下排序
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cc3000c
2012-12-26 · TA获得超过685个赞
知道小有建树答主
回答量:484
采纳率:25%
帮助的人:490万
展开全部
留下邮箱、给发一个例程。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式