标题:关于这个代码的输出
只看楼主
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
结帖率:0
 问题点数:0 回复次数:7 
关于这个代码的输出
#include "stdio.h"
main()
{void func();
 func();
 }
 void func()
 {char c;
  c=getchar();
  putchar(c);
  if(c!='#')
  func();
  putchar(c);
  }  
我输入xyz# 为何输出xyz##zyx  不应该是输出xyz##吗?  
如果的在最后一行 putchar(c)前面加上一个else 输出就是xyz##,谁能给解释一下这是为什么呢??
2015-08-03 11:19
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
递归

DO IT YOURSELF !
2015-08-03 11:22
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
得分:0 
回复 2楼 wp231957
能详细点吗? 刚学,看不懂= =
2015-08-03 11:23
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
刚学就不要研究递归了   我到现在还是迷迷糊糊呢

DO IT YOURSELF !
2015-08-03 11:23
sunbeam_
Rank: 3Rank: 3
来 自:我家
等 级:论坛游侠
威 望:1
帖 子:31
专家分:113
注 册:2015-8-2
得分:0 
首先输入是 xyz#

func()函数读入一个x,输出一个x,然后又调用了一个func(),不管它的输出是啥,之后还有一个输出x,那么最后的出会是  x....x
再看第二个func()  它读入了一个y,输出一个y,然后又调用了一个func(),同上,不管它的输出是啥,之后还有一个输出y,那么最后的出会是  xy...yx
以此类推 直到其中一个func() 读到#

爱好计算机的电气学渣
2015-08-03 11:31
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
得分:0 
回复 5楼 sunbeam_
不懂,为啥输出是x......x
2015-08-03 11:38
sunbeam_
Rank: 3Rank: 3
来 自:我家
等 级:论坛游侠
威 望:1
帖 子:31
专家分:113
注 册:2015-8-2
得分:0 

爱好计算机的电气学渣
2015-08-03 11:41
li362490567
Rank: 1
等 级:新手上路
帖 子:89
专家分:8
注 册:2015-7-9
得分:0 
明白了 ,thanks
2015-08-03 11:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-456009-1-1.html




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

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