16. 请编写一个函数fun,函数的功能是删除字符串中的所有空格。

16. 请编写一个函数fun,函数的功能是删除字符串中的所有空格。
例如, 主函数中输入"as d a f aa z67", 则输出为 "asdafaaz67"。
给定源程序:
#include <stdio.h>
void fun(char *s)
{
}
void main()
{
char str[80];
printf("Input a string:") ; gets(str);
puts(str);
fun(str);
printf("new str: %s\n",str);

}

#include <stdio.h>
void fun(char *s)
{
int i,j;
for(i=0;s[i];i++)
if(s[i]==' ')
{
for(j=i;s[j];j++)
s[j]=s[j+1];
i--;
}
}
void main()
{
char str[80];
printf("Input a string:") ; gets(str);
puts(str);
fun(str);
printf("new str: %s\n",str);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-06-14
void fun(char *s)
{
int i,j,len;

len=strlen(s);
j=0;
for(i=0; i<len; i++)
{
if(s[i]!=' ')
{
s[j]=s[i];
j=j+1;
}
}
s[j]='\0';
}
第2个回答  2019-01-12
#include<stdio.h>
void fun(char *str)
{
int i=0,n=0;
while(str[i])
{
if(str[i]!='?')
str[n++]=str[i];
i++;
}
str[n]='\0';
}
void main()
{
char a[100];
gets(a);
fun(a);
puts(a);
}