您的位置:首页 > 编程语言 > C语言/C++

提高项目30.7-去除句子中所有多余的空格,返回去除了空格的字符串

2016-07-12 22:11 447 查看
任务和代码:去除句子中所有多余的空格,返回去除了空格的字符串

/*
文件名:main.c
作者:小风景
完成日期:2016.7.12
问题描述: 去除句子中所有多余的空格,返回去除了空格的字符串
程序输出:
*/

#include <stdio.h>

void palltrim(char str[]);

int main(void)
{
char s[81]=" Some spaces before the first word. ";
printf("请输入一个句子:");
printf("原句子:\"%s\"\n", s);
palltrim(s);
printf("去除多余空格后为:\"%s\"\n", s);
return 0;
}

void palltrim(char str[])
{
int word = 1; //未输入时字符判断为1,当判断时会保留第一个单词前面的空格
char *p = NULL;

p = str;
while(*(p++) != '\0')
{
if(*p != ' ') //不是空格正常输出
{
*(str++) = *p;
word = 1;
}
else if(word ==1) //当检测到空格,判断前面输出的是否为空格,不为空格时才输出
{
*(str++) = *p;
word = 0;
}
}
*str = '\0'; //字符串结束
}


程序运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C语言 代码 函数