原题描述
Description
用指针方法解决,输入一个字符串,删除字符串中所有空格后,输出字符串
#include <stdio.h>
void removeSpace(char *s)
{
}
int main()
{
char s[81];
gets(s);
removeSpace(s);
printf("%s", s);
return 0;
}
输入格式
一行字符,以换行回车结束,最多不超过80个字符
输出格式
删除所有空格后输出
输入样例
abc 456
输出样例
abc456
题目分析
今晚太累了,明天起床再分析。
代码
自己的代码:
#include <stdio.h>
void removeSpace(char *s)
{
if(*s=='\0') return;
char *f=s,*r=s;
r++;
while(*r!='\0')
{
if(*f==' ')
{
while(*r==' ')
r++;
*f=*r;
*r=' ';
}
f++;
r++;
}
*f='\0';
}
int main()
{
char s[81];
gets(s);
removeSpace(s);
printf("%s", s);
return 0;
}
标程:
#include <stdio.h>
void removeSpace(char *s)
{
int i=0,j=0;
while(s[j]!='\0')
{
if(s[j]==' ') j++;
else
s[i++]=s[j++];
}
s[i]='\0';
}
int main()
{
char s[81];
gets(s);
removeSpace(s);
printf("%s", s);
return 0;
}