这段程序是怎样实现输入abc输出bca倒序功能的

#include"stdio.h"#include"math.h"voidrev(void);main(){rev();}voidrev(void){charc;c=ge... #include"stdio.h"
#include"math.h"
void rev(void);
main()
{
rev();
}
void rev(void)
{
char c;

c=getchar();
if(c!='\n')
{
rev();
printf("%c",c);

}

}
展开
 我来答
百度网友d3e418b2c
2006-06-01 · TA获得超过2195个赞
知道大有可为答主
回答量:1361
采纳率:0%
帮助的人:1696万
展开全部
这是一个递归函数
过程是先从main函袭陵纳数第一次进入rev()函数,这时c接受第一个输入字符‘a’,于是进入if语句第二次调用rev(),这时c接受‘b’,依然进入if调汪谈用rev(),然后c接受‘c’,还是调用rev()。注意,到这儿要输入回车了,因此c接受了‘\n’,不进入if语句,返拍没回前一个rev()没执行完的地方,执行printf语句,一个个的执行上去,依次输出了cba。
龙车花卉
2006-06-01 · TA获得超过1250个赞
知道小有建树答主
回答量:1280
采纳率:0%
帮助的人:0
展开全部
void rev(void)
{
char c;

c=getchar();
if(c!='\n')
{
rev(); //注意此句:由于是递归,最后调用函数和衡埋rev()最先解套,因此,
printf("%c",c); //拦派这一句总是最后调用函唤蚂数rev()要先执行。故实现倒序输出。

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式