这个是C编程语言中的一个题目,一开始看上去这个很无从下手,其实最重要的是把握问题的本质:状态。根据不同的状态做出不同的操作。以下是第一遍思路实现的结果,显然有很多应该去掉的代码。
int execise2()
{
int c;
int b = 1; // 0 for blank and 1 for non-blank
while((c = getchar()) != '0')
{
if(c == ' ' && b == 1)
{
b = 0;
putchar(c);
}
else if (c == ' ' && b == 0)
{
}
else if (c != ' ' && b == 1)
{
putchar(c);
}
else if (c != ' ' && b == 0)
{
b = 1;
putchar(c);
}
}
}
int main()
{
execise2();
return 0;
}