本文主要是介绍openJudge | 过滤多余的空格 C语言,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
总时间限制: 1000ms 内存限制: 65536kB
描述
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。
输入
一行,一个字符串(长度不超过200),句子的头和尾都没有空格。
输出
过滤之后的句子。
样例输入
Hello world.This is c language.
样例输出
Hello world.This is c language.
答案
方法一
#include <stdio.h>
int main() {int switch_ = 0;static char str[201], str_[201], *p = str, *q = str_;gets(str);for(p = str; *p != 0; p++) {if(*p == ' ' && switch_ == 0) {switch_ = 1;*(q++) = *p;} else if(*p != ' ') {switch_ = 0;*(q++) = *p;}}puts(str_);
}
方法二
#include <stdio.h>
int main() {int switch_ = 0;static char str[201], *p = str, *q = str;gets(str);for(p = str; *p != 0; p++) {if(*p == ' ' && switch_ == 0) {switch_ = 1;*(q++) = *p;} else if(*p != ' ') {switch_ = 0;*(q++) = *p;}}puts(str_);
}
方法二
#include <stdio.h>
int main() {int switch_ = 0;static char str[201], *p = str, *q = str;gets(str);for(int i = 0; i < 201; i++, p++) {if(*p == ' ' && switch_ == 0) {switch_ = 1;*(q++) = *p;} else if(*p != ' ') {switch_ = 0;*(q++) = *p;}}puts(str);
}
这篇关于openJudge | 过滤多余的空格 C语言的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!