ciao,
innanzitutto confronti un puntatore a char con un char, un buon compilatore ti dovrebbe segnalare l'errore.
Poi non esegui il controllo if quando fai il salto incondizionato al label inizia:, che devi posizionare prima dell'if.
Comunque studiati il costrutto while e prova ad applicarlo in sostituzione del salto incondizionato.
codice:
#include <stdio.h>
int main()
{
char tm[10];
char fine;
char rng[20];
printf("\nDigita una parola: ");
scanf("%s", &tm);
printf("\nHai scelto la parola: %s\n", tm);
printf("\nDigita una parola: ");
scanf("%s", &rng);
printf("\nHai scelto la parola: %s\n", rng);
FILE *fp;
fp = fopen("parola.txt", "a+");
fprintf(fp, "la prima parola immessa è: %s\n la seconda parola immessa è: %s ", rng, tm);
fclose(fp);
inizio:
if(strcmp(rng,"fine"))
{
printf("\nDigita una parola oppure 'fine' per finire: ");
scanf("%s", &rng);
printf("\nHai scelto la parola: %s\n", rng);
FILE *fp;
fp = fopen("parola.txt", "a+");
fprintf(fp, "la prima parola immessa è: %s\n la seconda parola immessa è: %s ", rng, tm);
fclose(fp);
goto inizio;
}
}