| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5355 人关注过本帖
标题:求助输出while循环里面的return值
只看楼主 加入收藏
zdtxfycgu
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2016-11-3
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:13 
求助输出while循环里面的return值
图片附件: 游客没有浏览图片的权限,请 登录注册
麻烦大神们看一看,我想输出mid值,怎么输出while里面return值,或者是其他输出上一步的mid值也行,谢谢了
搜索更多相关主题的帖子: return 
2016-11-03 23:50
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:4 
#include<stdio.h>
main()
{
    int a[80]={6,153,298,313,317,332,345,376,486};
    int low=0,high=80,mid;
    while(low<=high)
    {
        mid=(low+high)/2;
        if(a[mid]==4254)
        {
            return mid;
        }
        else if(a[mid]>4254)
        {
            high=mid-1;
        }
        else
        low=mid+1;
    }
    printf("输出mid值%d",mid);
    return 0;
}

早知做人那么辛苦!  当初不应该下凡
2016-11-04 00:11
魑魅
Rank: 1
等 级:新手上路
帖 子:77
专家分:9
注 册:2016-9-18
收藏
得分:0 
你少了一个printf的输出,你在return的前面加上一个输出语句
2016-11-04 07:27
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:4 
回复 2楼 炎天
以下程序是我在你的源程序上进行修改的,得出来的结果和你程序的结果一样

#include<stdio.h>
main()
{
    int a[80]={6,153,298,313,317,332,345,376,486};
    int low=0,high=80,mid;
    while(low<=high)
    {
        mid=(low+high)/2;
       if(a[mid]>4254)
        {
            high=mid-1;
        }
        else
        low=mid+1;
    }
    printf("输出mid值%d",mid);
    return 0;
}

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2016-11-04 08:22
zdtxfycgu
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2016-11-3
收藏
得分:0 
回复 2楼 炎天
我在最后加了printf("%d",mid)的,但是输出不出来,很奇怪。
2016-11-04 15:39
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:4 
为了快速获取别人的帮助  要发代码 不要发图片  

DO IT YOURSELF !
2016-11-04 15:43
StadyC
Rank: 6Rank: 6
等 级:侠之大者
威 望:6
帖 子:182
专家分:430
注 册:2016-10-13
收藏
得分:4 
main函数return,程序已经结束啦,要在return之前写printf("%d\n", mid);
2016-11-04 16:13
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:0 
回复 5楼 zdtxfycgu
可能编译器不同,实在不行请发上你的题目.

早知做人那么辛苦!  当初不应该下凡
2016-11-04 17:53
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
收藏
得分:0 
回复 4楼 九转星河
得出来的结果是一样, 但是我刚刚试着填上a[41]=4254,结果就不一样的

早知做人那么辛苦!  当初不应该下凡
2016-11-04 17:55
书生牛犊
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:星夜征程
等 级:贵宾
威 望:10
帖 子:1101
专家分:5265
注 册:2015-10-27
收藏
得分:4 

慎重使用return   ,在main函数里return mid 这个mid是要被传递给系统的。。。用于判断本程序是否正常终止。返回0表示正常非零不正常。。。。

在while / for  循环里面应该使用的是break  


φ(゜▽゜*)♪
2016-11-04 17:56
快速回复:求助输出while循环里面的return值
数据加载中...
 
   



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

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