目录
1.首先,这道题是一个字符串的问题,我们要先知道字符串存放在char类型的数组中的,并不是一个变量就可直接存放的下一个完整的字符串
2.这个题目,让我们过滤掉连续的空格,然后只留下一个空格。我们不妨换一个思路:过滤掉所有空格,然后在空格处手动加上一个空格
3.这是就又要我们判断什么时候是空格?这是不得不提及一个常用的库函数scanf,他在读取字符串时有一个特点,它一次性;只能读取空格前的字符串,遇到空格就停止录入,即使空格后面还有字母
4.代码设计:将scanf作为while循环的条件,每次循环截至就意味着读完了空格前的字符串,就打印字符串和一个空格,这样就实现了过滤空格
#include <stdio.h>
//2047过滤字符串
int main()
{
char s[205] = { 0 };
while ((scanf("%s", s))!=EOF)
{
printf("%s ", s);
}
return 0;
}