| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4305 人关注过本帖
标题:利用递归的方法编程实现:用户输入一个整数,如输入235,则程序顺序输出2 3 ...
只看楼主 加入收藏
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
结帖率:82.93%
收藏
已结贴  问题点数:20 回复次数:20 
利用递归的方法编程实现:用户输入一个整数,如输入235,则程序顺序输出2 3 5。下面的程序能否给个注释,看不懂!谢谢大佬!
程序代码:
#include <stdio.h>
void p(int);
int main(void)
{
    int n;
    printf("输入一个整数\n");
    scanf("%d",&n);
    p(n);
}
void p(int n)
{
    if(n/10 == 0)
    {
        printf("%d ",n);
        return;
    }
    p(n/10);
    printf("%d ",n%10);
}
搜索更多相关主题的帖子: 递归 整数 输入 int void 
2020-01-11 23:14
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:4 
你贴图容易被封号哦

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-01-11 23:34
abc594986308
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:116
注 册:2013-3-18
收藏
得分:0 
回复 2楼 叶纤
啥意思啊
你能解就解
2020-01-11 23:53
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
没有什么意思啊,就是前两天看到了一个网址怕你被封提醒一下
https://bbs.bccn.net/thread-488292-1-1.html
这题还可以啊能看的明白啊不难啊
分解起来就是
p(p(p(n/10)))
{if(..)
printf n%10}//因为printf  后是有空的所以结果为空n

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-01-12 01:34
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
原来这种的叫递归函数啊我也学到了

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-01-12 01:42
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
如果楼主还是看不懂我就写个数字吧
p(n)       2     23      235
n%10     2     3           5

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-01-12 01:45
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
如果还是不懂,你就把他当做for循环

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-01-12 01:51
xianfajushi
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:8
帖 子:527
专家分:690
注 册:2007-9-8
收藏
得分:4 
递归与堆栈的关系,堆栈出入先后的关系。
递归过程是一种调用自身的函数,在调用的过程中存在转入子程序的过程。在每次转子前需要保护现场,则将相应参数和中间结果压入系统堆栈,而在子程序返回的时候,需要恢复现场,则将之前压栈的数据从系统堆栈弹出,因此,递归过程存在隐含的堆栈操作,而且子程序的调用过程满足堆栈先进后出的特性。
void p(int n)
{
    if(n/10 == 0)
    {
        printf("%d ",n);当只有一位数时
        return;结束递归
    }
    p(n/10);123/10=12/10=1
    printf("%d ",n%10);显示尾数,显示1,显示2,显示3,体现先入后出或后入先出这2种说法一个意思。
}

[此贴子已经被作者于2020-1-12 02:25编辑过]

2020-01-12 02:19
叶纤
Rank: 8Rank: 8
等 级:禁止访问
威 望:1
帖 子:658
专家分:848
注 册:2019-11-22
收藏
得分:0 
呀楼上的也没睡啊,也附赠我的循环图吧,花了我很长时间
图片附件: 游客没有浏览图片的权限,请 登录注册
收到的鲜花

把学习时间浪费在混坛上是傻瓜行为,更何况自己的水平连一两都没到。
2020-01-12 02:56
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10608
专家分:43190
注 册:2014-5-20
收藏
得分:4 
递归,入栈出栈,后入先出。
2020-01-12 09:11
快速回复:利用递归的方法编程实现:用户输入一个整数,如输入235,则程序顺序输 ...
数据加载中...
 
   



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

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