电视抽奖活动中,根据主持人给出的提示(高了还是低了),观众在规定时间内猜中该商品价格即可获得该商品

所谓的二分查找法,其实是一种有序的查找方法,也称折半查找(Binary Search),如果是无序的则要先进行排序操作。基本思想是:目标值通过与中间元素比较,可分为三种情况:

第一种情况:目标值与中间元素相等,查找结束;
第二种情况:目标值比中间元素大,则把后半部分的中间元素与目标值比较;
第二种情况:目标值比中间元素小,则把前半部分的中间元素与目标值比较;
这三步一直循环,直到查找结束。

效果如下:

代码如下:

//
//  main.c
//  数据结构
//
//  Created by ylb on 2019/3/27.
//  Copyright © 2019 ylb. All rights reserved.
//#include <stdio.h>int main() {int oldprice,price=0,i=0;printf("请先设置商品的真实价格:");scanf("%d",&oldprice);printf("请输入适猜的价格:\n");while(oldprice!=price){i++;printf("参与者:");scanf("%d",&price);printf("主持人:");if(price>oldprice){printf("高了\n");}else if(price<oldprice){printf("低了\n");}else{printf("恭喜你,猜对了,该商品属于你了!\n\n你一共试猜了 %d 次",i);}}return 0;
}

在C语言中使用二分法算法思想解决猜商品价格问题相关推荐

  1. 动态规划算法思想解决找零钱问题

    前言 关于找零钱问题,网上已经有很多相关的资料以及优秀的文章博客等.这里写这篇博客的初衷很简单,就是为了方便自己,回过头来捡起这个知识能快一点,接受起来更易理解点:他人的文章写的再好,毕竟是别人的,学 ...

  2. Java使用动态规划算法思想解决01背包问题

    Java使用动态规划算法思想解决背包问题 背包问题是一种组合优化的NP完全问题.问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高 动 ...

  3. C语言中如何衡量算法的正确性,从C语言的角度重构数据结构系列(二)-如何衡量一个算法的优劣?...

    前言 在学习具体的数据结构和算法之前,每一位初学者都要掌握一个技能,即善于运用时间复杂度和空间复杂度来衡量一个算法的运行效率. 在这里给自己打个广告,需要的小伙伴请自行订阅. python快速学习实战 ...

  4. C语言指针使用过程中 不需要清零,C语言中指针使用常见问题及解决办法.pdf

    . - - 自 · - j 1- j w - m - - [ - № 实用第一 智慧密集 C语 i觅 及 捧法l j||? l .. 一 摘 要:讲述 了在 c语言中指针使用时所 出现的一些常见问题 ...

  5. c语言中穷竭算法,hihocoder#1054 : 滑动解锁(深度优先搜索)

    描述 滑动解锁是智能手机一项常用的功能.你需要在3x3的点阵上,从任意一个点开始,反复移动到一个尚未经过的"相邻"的点.这些划过的点所组成的有向折线,如果与预设的折线在图案.方向上 ...

  6. c语言成绩存储的算法思想,C语言算法总结,非常精辟

    <C语言算法总结,非常精辟>由会员分享,可在线阅读,更多相关<C语言算法总结,非常精辟(9页珍藏版)>请在人人文库网上搜索. 1.c语言算法摘要2 .牛顿迭代a的平方根[思想摘 ...

  7. 中点画线完整算法c语言,中点画线算法

    在网上看中点画线算法,很多说法是中点画线类似于Breshehanm画线. 但是助教说的中点画线是寻找直线两端点的中点进行画点,然后分别递归左右半段直线. 当年不好好学习,递归掌握的不好,现在自己试了试 ...

  8. c语言中二分法100中找30,c语言中的二分法

    \\\题外:对于printf引号中的内容一定要细心书写 ; 数组由a[0]开始计数,切记:尤其是与for循环中i=1 搞混 运用a[i+1]等超前数据时 需先用 for(i=0;i<=n-1;i ...

  9. 中点画线完整算法c语言,中点画线算法(任意斜率)

    基本原理 在画直线段的过程中,当前像素点为(xp ,yp ),下一个像素点有两种可选择点P1(xp +1,yp )或P2(xp +1,yp +1).若M=(xp +1,yp +0.5)为P1与P2之中 ...

最新文章

  1. 深入理解Spring的ImportSelector接口
  2. 7个最佳的学习Python编程的开源库
  3. 南农Nature Microbiology一作顾少华:我与铁载体的这5年
  4. jQuery源码解析之position()
  5. elementUI日期选择器:仅设置可选择时间区间
  6. MySQL-MySQL数据类型及占用字节数
  7. React和Vue的模块化
  8. 【本人秃顶程序员】Java程序员成长三部曲!
  9. go var 一个整数_Go语言基础之基本数据类型
  10. 软件测试整理复习(简答题)转载请经由作者同意
  11. 系统分析与设计期末复习题目
  12. 【安装教程】python3.6安装Tensorflow-GPU路上的那些坑(WIN10)
  13. word打开文档很久很慢_打开office非常慢怎么回事_电脑打开word文件很慢怎么办
  14. 帆软报表-frm报表,报表块作为标题 下划线特效
  15. 转:原来可以这样出书、写书?
  16. 易基因项目文章|WGBS+RNA-seq揭示PM2.5引起男性生殖障碍的DNA甲基化调控机制
  17. 安装pocoui报错
  18. MySql数据库入门
  19. 个人资源分享【建议收藏,持续更新】
  20. oracle 11g 百度云盘,Oracle 11.2.0.1 For Linux 64+32bit 数据库介质 百度云盘下载

热门文章

  1. python-Opencv 图片锐化
  2. python量化交易之 放量跌到底买入-涨1.1再卖
  3. Spring Boot 项目如何实现上传头像功能?
  4. UML类图关系(C++)
  5. erron变量、strerror函数 和 perror 函数
  6. 数据库系统之物理设计
  7. 为什么JS的语法很乱
  8. 合振动的初相位推导_②音响处理器肿么调?处理器教学 音箱延时相位耦合就是这么简单【愤怒的调音师】...
  9. Python获取股票数据及其可视化--基于tushare库
  10. Windows系统安装了虚拟机后,网络无法修复且无网络连接如何修复?跟随作者一起来寻找问题并解决吧