| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1594 人关注过本帖
标题:[求助]我真的不理解,这个程序怎么就实现了字符的反向输出呢?
只看楼主 加入收藏
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
 问题点数:0 回复次数:22 
[求助]我真的不理解,这个程序怎么就实现了字符的反向输出呢?
#include <stdio.h>
void f()
{
int c = getchar();
if(c!='\n')
f();
putchar(c);
}

int main(void)
{
f();
return 0;
}
搜索更多相关主题的帖子: 字符 输出 
2007-08-16 00:40
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 

文章里应该讲得挺清楚的呀
2007-08-16 00:46
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 
你能帮我,解释一下吗?getchar()不是从键盘输入一个字符吗,输入N个也可以吗?

努力才会成功!
2007-08-16 00:50
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
的确只读取一个啊,问题就是实际上是多次调用了getchar啊
2007-08-16 00:54
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 
太经典了,看不太懂呀,能不能详细解释一下呀?

努力才会成功!
2007-08-16 00:56
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 
那它是怎么实现“反向”输出的

努力才会成功!
2007-08-16 00:57
企鹅
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-7-14
收藏
得分:0 

楼主画个函数递归过程图可能就明白了

2007-08-16 01:03
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 

void f()
{
int c = getchar();
if(c!='\n')
f();
putchar(c);
}
怎么就实现了反向输出呢,就靠putchar(c);它吗?它不也是输出一个字符吗?


努力才会成功!
2007-08-16 01:07
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
f只接收一个并输出一个,剩下的交由里面的f来处理啊

[此贴子已经被作者于2007-8-16 1:20:34编辑过]


2007-08-16 01:19
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
收藏
得分:0 
你举个例子 吧,比如:我从键盘输入abc三个字符,f()函数是怎么工作的,谢谢你了美女

努力才会成功!
2007-08-16 01:22
快速回复:[求助]我真的不理解,这个程序怎么就实现了字符的反向输出呢?
数据加载中...
 
   



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

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