我正在尝试创建一个程序,该程序从先前创建的文件中读取文本,将其反转,然后写入另一个文件。我现在拥有的代码允许我反转单个单词,但是只要有空格或段落就停止。我可以使用一些帮助来解决此问题。这是我到目前为止的代码:
#include <stdio.h>
#include <string.h>
int main()
{
int c, d;
FILE *fich1, *fich2;
char string [100], *inicio, *fim, tempo;
fich1 = fopen("FicheiroInicial.txt", "rt");
if (fich1 == NULL)
{
printf ("Erro - Nao foi possivel abrir o ficheiro\n");
return (-1);
}
fscanf (fich1, "%s", string);
fclose (fich1);
inicio = string;
fim = inicio + strlen(string) - 1;
while (fim > inicio)
{
tempo = *inicio;
*inicio = *fim;
*fim = tempo;
++inicio;
--fim;
}
fich2 = fopen("FicheiroFinal.txt", "wt");
fprintf (fich2, "%s", string);
fclose (fich2);
printf ("%s", string);
return 0;
}
提前致谢!
最佳答案
我相信fscanf()一次只会给您一个字。您将需要对其进行迭代,直到返回EOF(文件末尾)