| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 589 人关注过本帖
标题:递归问题
只看楼主 加入收藏
hackcat
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-11-2
收藏
 问题点数:0 回复次数:3 
递归问题
#include <stdio.h>
void main()
{
    void   cat(int num);
    printf("Please input a number :\n");
    scanf("%d",&a);
    cat(a);
}
void  cat(int num)   
  {   
    if(num<10)   printf("%d",num);   
    else{   
      cat(num/10);   
      printf("%d",num%10);  
    }   
  }   
为什么这个能实现正序输出,哪位帮忙分析一下递归过程,万分感谢
搜索更多相关主题的帖子: 递归 
2008-11-02 22:37
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
收藏
得分:0 
想实现什么功能??

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2008-11-02 22:42
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
收藏
得分:0 
是不是这样:
int main(void)
{
    void   cat(int num);
    int a;
    printf("Please input a number :\n");
    scanf("%d",&a);
    getchar();
    cat(a);
    getchar();
    return 0;
}               
void  cat(int num)   
  {   
      if(num/10)
      cat(num/10);   
      printf("%d",num%10);  
     
  }

-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2008-11-02 22:51
nianshi
Rank: 1
等 级:新手上路
帖 子:199
专家分:0
注 册:2007-11-7
收藏
得分:0 
如果Num》=10,则要进行递归,此时不会输出因为总是在调自己,直到当Num<10了,就执行printf()开始输出,之前每次递归都要执行一个Printf()。

行至水穷处 坐看去起时
C语言QQ群1:51871776  群2:26313099  群3:47145282
2008-11-03 11:51
快速回复:递归问题
数据加载中...
 
   



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

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