利用二分法查找 设计人与计算机猜数游戏,二分查找法举例

满意答案

#include

int main()

{

int a[11]={0,1,2,3,4,5,6,7,8,9,10},k=1,flag=0;

int i,m,n,j,low,mid,high;

for(i=1;i<=10;i++)

{

printf("a[%d]=%d ",i,a[i]);

if(i%3==0)printf("\n");

}

printf("\n\n输入一个数,输出查找结果:");

scanf("%d",&m);

printf("\n\n");

low=1;high=10;

while(low<=high)

{

mid=int((low+high)/2);

printf("第%d次查找的是第%d个数 ",k,mid);k++;

n=a[mid];printf("第%d个数的值是%d\n",mid,n);

if(m==n)

{

printf("\n\n找到结果该数是原数组中第%d个数\n\n",mid);

flag=1;

break;

}

if(m>n)low=mid+1;

if(m

}

printf("\n\n");

if(flag==0)printf("该数组中不存在这个数。");

printf("\n\n");

return 0;

}

00分享举报

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值