当前输入字符可以分为两种情况:
1、当前输入字符不为空,则直接输出这个字符即可;
2、当前输入字符为空,这种情况又可以分为两种情况:
①、上一个输入字符也为空,则忽略此次输入的空格即可;
②、上一个输入字符不为空,则直接输出这个字符即可。
基本思想是:
设置两个变量,分别记录当前输入的字符和上一次输入的字符,“上一个字符”初始化为EOF。
如果当前输入字符为空,上一个输入字符也为空,则忽略当前输入的字符。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int c; /* 用于存放当前输入的字符 */
int pc; /* 用于存放当前输入的上一个字符 */
while((c = getchar()) != EOF)
{
if (c != ' ')
{
putchar(c);
}
else if (pc != ' ')
{
putchar(c);
}
pc = c;
}
}
经验证 代码可实现相关功能