请编写一个函数,函数的功能是删除字符串中的所有空格。
例如, 主函数中输入"asd af aa z67", 则输出为 "asdafaaz67"。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include <stdio.h>
#include <ctype.h>
void fun (char *str)
{
int i=0;
char *p=str;
while(*p)
{
if(*p!=' ') /*删除空格*/
{
str[i]=*p;
i++;
}
p++;
}
str[i]='\0'; /*加上结束符*/
}
main()
{
char str[81];void NONO ();
printf("Input a string:") ;
gets(str);
puts(str);
fun(str);
printf("*** str: %s\n",str);
NONO();
}
回复 嘿嘿大人:这是我写的,0分,但是我的思想和答案一样啊:
#include <stdio.h>
#include <ctype.h>
void fun(char *str)
{int i,j=0,n,*t;
n=strlen(str);
for(i=0;str[i]!=' '&&i<n;i++)
str[j++]=str[i];
str[j]=0;
}
main()
{
char str[81];void NONO ();
printf("Input a string:") ;
gets(str);
puts(str);
fun(str);
printf("*** str: %s\n",str);
NONO();
}
回复 嘿嘿大人:我重新编写,0分。为什么?我的:
#include <stdio.h>
#include <ctype.h>
void fun(char *str)
{int i=0;
char *p=str;
whlie(*p)
{if(*p!=' ')
*p=str[i++];
p++;}
*p=0;
}
main()
{
char str[81];void NONO ();
printf("Input a string:") ;
gets(str);
puts(str);
fun(str);
printf("*** str: %s\n",str);
NONO();
}
void NONO ()