您的位置:首页 > 其它

编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替。

2012-12-02 12:01 465 查看
  当前输入字符可以分为两种情况:

  1、当前输入字符不为空,则直接输出这个字符即可;

  2、当前输入字符为空,这种情况又可以分为两种情况:

  ①、上一个输入字符也为空,则忽略此次输入的空格即可;

  ②、上一个输入字符不为空,则直接输出这个字符即可。

基本思想是:
  设置两个变量,分别记录当前输入的字符和上一次输入的字符,“上一个字符”初始化为EOF。
  如果当前输入字符为空,上一个输入字符也为空,则忽略当前输入的字符。

View Code

#include <stdio.h>

main()
{
int c;    /* 用于存放当前输入的字符 */
int pc;    /* 用于存放当前输入的上一个字符 */

while((c = getchar()) != EOF)
{
if (c != ' ')
{
putchar(c);
}
else if (pc != ' ')
{
putchar(c);
}

pc = c;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐