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

删除前导空格和后继空格的C语言函数

2007-03-02 15:17 351 查看
#include<stdio.h>

/*删除前导空格的函数*/
void headspace(char* s)
{
int i,j;
for(i=0;s[i]==32;i++); /*循环结束后的i值为前导空格的个数*/
if(i==0) return;
for(j=i;s[j]!='/0';j++) s[j-i]=s[j];
s[j-i]='/0';

}

/*删除后继空格的函数*/
void tailspace(char* s)
{
int i=0,k;
while(s[i]!='/0')i++;
for(k=i-1;s[k]==32;k--);
s[k+1]='/0';
}

/*main函数可以用来测试函数的正确性*/
main()
{
char s[20];
printf("/n");
gets(s); /*输入一个字符串*/
puts(s); /*输出字符串*/

printf("/n");
printf("%d/n",strlen(s)); /*输出原字符串的长度(不包含结束标志)*/
headspace(s);
puts(s);
printf("/n");
printf("%d/n",strlen(s)); /*输出删除前导空格后的字符串的长度*/
tailspace(s);
puts(s);
printf("/n");
printf("%d/n",strlen(s)); /*输出删除后继空格后的字符串的长度*/

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