标题:大佬们帮我看看这题,为什么运行时按enter没有任何显示,是不是和指针有关系 ...
只看楼主
路人甲3
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2022-9-27
结帖率:100%
已结贴  问题点数:16 回复次数:2 
大佬们帮我看看这题,为什么运行时按enter没有任何显示,是不是和指针有关系
#include<stdio.h>
#define max 10
int binary_search(int a[], int n,int x)
{
    int left = 0;
    int right = n - 1;
    int mid = (left + right)/2;
    while (left <= right)
    {
        if (a[mid] == x)
        {
            printf("查找成功!");
            return mid;
        }
        else if (a[mid] < x)
            left = mid + 1;
        else if(a[mid] > x)
            right = mid - 1;
    }
    return -1;
}
int main()
{
    int a[max];
    int x,k;
    printf("请输入十个数字:\n");
    for (int i = 0; i < max; i++)
    {
        scanf("%d",&a[i]);
    }
    while (1)
    {
        printf("请输入你要查找的数字:\n");
        scanf("%d", &x);
        k = binary_search(a, 10, x);
        if (k == -1)
            printf("查找失败,没有这个数!");
    }
    return 0;
}
搜索更多相关主题的帖子: printf return left mid int 
2023-04-23 17:26
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:16 
大约是输入过逗号什么的造成的吧

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2023-04-23 18:21
forever74
Rank: 12Rank: 12Rank: 12
来 自:CC
等 级:贵宾
威 望:49
帖 子:1636
专家分:3940
注 册:2007-12-27
得分:0 

mid=
这句应该在循环里边第一行

对宇宙最严谨的描述应该就是宇宙其实是不严谨的
2023-04-23 18:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-512016-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.130558 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved