能输出和要求一样的结果 但不给分...哪个地方出错了?
#include <stdio.h>
#include <ctype.h>
void fun(char *str)
{
int *temp;
while(*str)
{
if(*str==' ')
{
temp=str;
while(*str)
{
*str=*(str+1);
str++;
}
str=temp;
}
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) ;
}
我觉得问题不大,只是如果你吧temp的定义改为字符串字符的定义比较好,比较人家str是字符串指针的定义
void fun(char *str)
{
char *temp;
while(*str)
{
if(*str==' ')
{
temp=str;
while(*str)
{