过滤多余的空格 一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 时间限制:1000 内存限制:65536 输入 一行,一个字符串(长度不超过200),句子的头和尾都没有空格。 输出 过滤之后的句子。 样例输入 Hello world.This is c language. 样例输出 Hello world.This is c language.
【喵呜刷题小喵解析】:本题的输入是一行字符串,需要过滤掉多余的空格,只留下一个空格。首先,我们定义一个字符数组 `str` 来存储输入的字符串,以及两个整型变量 `i` 和 `j` 用于遍历和修改字符串。然后,使用 `fgets` 函数从标准输入读取一行字符串,存储在 `str` 中。接下来,我们使用两个指针 `i` 和 `j` 遍历字符串。如果当前字符是空格,并且前一个字符不是空格,或者当前字符是字符串的第一个字符,那么将空格复制到 `str` 中,并将 `j` 加一。否则,如果当前字符不是空格,那么将当前字符复制到 `str` 中,并将 `j` 加一。最后,我们在 `str` 的末尾添加字符串结束符 `'\0'`,并使用 `printf` 函数输出过滤后的字符串。注意,由于题目要求句子的头和尾都没有空格,因此我们可以直接忽略字符串开头和结尾的空格,只需要在字符串中间过滤多余的空格即可。