| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 703 人关注过本帖
标题:#include<stdio.h>请大家指教一下!!!
只看楼主 加入收藏
c门
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2011-9-13
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:8 
#include<stdio.h>请大家指教一下!!!
有个问题是这样的,请问它的结果是什么?为什么????
#include<stdio.h>
void fun(int x)
{  if(x/2>0)
   fun(x/2);
   printf("%d",x);
}
main()
{ fun(3);
printf("\n");
}

[ 本帖最后由 c门 于 2011-9-16 16:54 编辑 ]
搜索更多相关主题的帖子: include 
2011-09-16 16:40
statics
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:163
专家分:625
注 册:2011-8-29
收藏
得分:5 
13,
viod fun(int x)//注意是 “void”
{  if(x/2>0)//1:if(1>0)
   fun(x/2);//2:fun(1)=>3: printf("%d",x);//x=1
   printf("%d",x);//4: printf("%d",x);//3
}

惟我独行...
2011-09-16 16:50
c门
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2011-9-13
收藏
得分:0 
为什么会有两个答案啊!!!不是只有 1 这个答案吗?
2011-09-16 16:54
hwf214685147
Rank: 2
等 级:论坛游民
帖 子:70
专家分:94
注 册:2011-9-14
收藏
得分:5 
13   这是函数的嵌套,第一次运行时条件成立,再调用一次。一次输出1,一次输出3
2011-09-16 16:57
statics
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:163
专家分:625
注 册:2011-8-29
收藏
得分:0 
这是个递归,当条件满足if(x/2>0)
会调用自己fun()

惟我独行...
2011-09-16 16:58
hwf214685147
Rank: 2
等 级:论坛游民
帖 子:70
专家分:94
注 册:2011-9-14
收藏
得分:0 
函数调用了两次,printf就运行了两次
2011-09-16 16:59
c门
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2011-9-13
收藏
得分:0 
高手!!!
就是说fun()这是个递归调用函数啊!!
2011-09-16 17:00
hwf214685147
Rank: 2
等 级:论坛游民
帖 子:70
专家分:94
注 册:2011-9-14
收藏
得分:0 
恩,可以这么说
2011-09-16 17:18
yxiangyxiang
Rank: 3Rank: 3
来 自:/\/\/\/\/
等 级:论坛游侠
帖 子:130
专家分:186
注 册:2012-1-29
收藏
得分:0 
void fun( int x )
{
    if( x/2>1 )(第一次调用)
    {
        if( x/2>1 )(第二次调用)
            printf("%d", x);(第二次)
        printf("%d", x);(第一次)
    }
}   
        
2012-02-09 10:36
快速回复:#include<stdio.h>请大家指教一下!!!
数据加载中...
 
   



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

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