| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1207 人关注过本帖
标题:如何理解关于函数递归的程序?
取消只看楼主 加入收藏
zhengzhihui
Rank: 2
来 自:汕头大学
等 级:论坛游民
帖 子:36
专家分:57
注 册:2009-7-4
结帖率:90%
收藏
已结贴  问题点数:20 回复次数:1 
如何理解关于函数递归的程序?
题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
程序源代码:

#include "stdio.h"
main()
{
int i=5;
void palin(int n);
printf("\40:");
palin(i);
printf("\n");
}
void palin(n)
int n;
{
char next;
if(n<=1)
 {
 next=getchar();
 printf("\n\0:");
 putchar(next);
 }
else
 {
 next=getchar();  /*这一段尤其不懂*/
 palin(n-1);
 putchar(next);
 }
}
本程序该如何理解?


[ 本帖最后由 zhengzhihui 于 2009-8-28 14:53 编辑 ]
搜索更多相关主题的帖子: 函数 递归 
2009-08-28 14:43
zhengzhihui
Rank: 2
来 自:汕头大学
等 级:论坛游民
帖 子:36
专家分:57
注 册:2009-7-4
收藏
得分:0 
回复 2楼 UserYuH
你说循环一次时,next成了新的变量,这一点不理解;它先读取了A,再读取B时,A不是已经被覆盖掉了吗,又怎么能再输出A呢?
2009-08-30 14:43
快速回复:如何理解关于函数递归的程序?
数据加载中...
 
   



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

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