请编写一个函数,函数的功能是删除字符串中的所有空格。例如,主函数中输入”asd afaa z67”,则输出为”asdafaaz67”。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的

admin2017-11-27  61

问题   请编写一个函数,函数的功能是删除字符串中的所有空格。例如,主函数中输入”asd afaa z67”,则输出为”asdafaaz67”。
    注意:部分源程序在文件PROG1.C中。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include
#include
void fun(char *str)
{

}
main ()
{
char str[81];void NONO ();
printf("Input a string:");
gets(str);
puts(str);
fun(str);
printf ("*** str: %s\n",str);
NONO();
}
void NONO ()
{
/*请在此函数内打开文件,输入调试数据,
调用fun函数,输出数据,关闭文件。*/
char str[81];
int n = 0;
FILE *rf, *wf ;
rf = fopen("in.dat","r");
wf = fopen("out.dat","w");
while(n < 10) {
fgets(str, 80, rf);
fun (str);
fprintf(wf, "%s", str);
n++ ;
}
fclose(rf);
fclose(wf);
}

选项

答案char *p=str; int i=0; while(*p){ if(*p !=’ ’)str[i++]=*p; p++;) str[i]=0;

解析 该程序功能是删除字符串中的所有空格。本题的解题思路是首先利用一个指向字符串的指针,查找不是空格的字符,然后将不是空格的字符赋值到字符串,如果是空格,则跳过该字符,这样就实现了空格字符的删除。
转载请注明原文地址:https://kaotiyun.com/show/U2xp777K
0

最新回复(0)