| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 869 人关注过本帖, 1 人收藏
标题:关于getchar 和putchar的问题 求前辈指教
只看楼主 加入收藏
lukunstriker
Rank: 2
等 级:论坛游民
帖 子:22
专家分:20
注 册:2010-3-29
结帖率:85.71%
收藏(1)
已结贴  问题点数:20 回复次数:2 
关于getchar 和putchar的问题 求前辈指教
#include <stdio.h>
/*输入字符 倒序输出*/
void pailie( int n)
 {
     char x;
 if(n<=1)
    { x=getchar();
           printf("\n");
 putchar(x);
 }

 else
 { x=getchar();
  pailie(n-1);
  putchar(x);
 

 }
 
 }


 main()
 {int i=5;
 pailie(i);
  printf("\n");
 return 0;
 }

求解标红的那段 请问这儿的X=getchar()是指x等于那串字符串的最后一个字符还是第一个?如果是最后一个字符的话那下面这段程序为何结果不同:
main()
{char x;
x=getchar();
putchar(x);
}
如果我输入abcde输出结果则成了a
还请高手就putchar 和 getchar 指点一下 谢谢了
搜索更多相关主题的帖子: putchar 指教 前辈 getchar 
2010-04-15 19:12
草狼
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:577
专家分:1040
注 册:2010-4-6
收藏
得分:20 
void pailie( int n)
{
     char x;
if(n<=1) //判断n是否小于等于1;
    { x=getchar();//输入最后一个字符;
           printf("\n");
putchar(x);//输出最后一个字符
}
else
{ x=getchar();//输入一个字符;
  pailie(n-1);//继续调用pailie;(下面的语句没有执行)
  putchar(x);//等pailie(n-1)完全执行完后才执行pailie(n)中的这条语句;
}
}

main()
{int i=5;
pailie(i);//开始调用pailie函数
  printf("\n");
return 0;
}

main()
{char x;
x=getchar();
putchar(x);
}
//列:
  输入:ABCDE 输出:EDCBA;
   1:当n=5的时候 输入A,然后就直接调用函数 pailie(n-1),即pailie(4),这时pailie(5)中个putchar(x)还没执行 这是关键的地方
   2:当n=4的时候 输入B,然后就直接调用函数 pailie(n-1),即pailie(3),这时pailie(4)中个putchar(x)还没执行
   3:当n=3的时候 输入C,然后就直接调用函数 pailie(n-1),即pailie(2),这时pailie(3)中个putchar(x)还没执行
   4:当n=2的时候 输入D,然后就直接调用函数 pailie(n-1),即pailie(1),这时pailie(2)中个putchar(x)还没执行
   5:当n=1的时候 输入E,这时N=1符合IF条件了就直接输出E;这时pailie(1)就完全执行完了,
   然后就倒着往上推就行了 pailie(1)完全执行完了,就可以执行pailie(2)中的putchar(x)了;
   pailie(2)完全执行完了,就可以执行pailie(3)中的putchar(x)了;
   pailie(3)完全执行完了,就可以执行pailie(4)中的putchar(x)了;
   pailie(4)完全执行完了,就可以执行pailie(5)中的putchar(x)了;
   最后程序执行完毕;


x=gentchar()X等于第一个字符;

[ 本帖最后由 草狼 于 2010-4-15 20:41 编辑 ]
2010-04-15 19:55
lukunstriker
Rank: 2
等 级:论坛游民
帖 子:22
专家分:20
注 册:2010-3-29
收藏
得分:0 
回复 2楼 草狼
非常感谢你
2010-04-16 09:24
快速回复:关于getchar 和putchar的问题 求前辈指教
数据加载中...
 
   



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

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