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

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

在C语言中使用二分法算法思想解决猜商品价格问题_第1张图片

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

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

效果如下:
在C语言中使用二分法算法思想解决猜商品价格问题_第2张图片

代码如下:

//
//  main.c
//  数据结构
//
//  Created by ylb on 2019/3/27.
//  Copyright © 2019 ylb. All rights reserved.
//

#include 

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

你可能感兴趣的:(数据结构,C语言,mac,数据结构,二分法)