Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Após adicionar uma palavra nova ele nao acrescenta o numero corretamente no TXT

void adicionapalavra () {
    char quer;

    printf("Você deseja adicionar uma nova palavra no jogo (S/N)?");
    scanf(" %c", &quer);

    if(quer == 'S') {
        char novapalavra[20];

        printf("Digite a nova palavra, em letras maiúsculas: ");
        scanf("%s", novapalavra);

        FILE* f;

        f = fopen("palavras.txt", "r+");
        if(f == 0) {
            printf("Banco de dados de palavras não disponível\n\n");
            exit(1);
        }

        int qtd;
        fscanf(f, "%d", &qtd);
        qtd++;
        fseek(f, 0, SEEK_SET);
        fprintf(f, "%d", qtd);

        fseek(f, 0, SEEK_END);
        fprintf(f, "\n%s", novapalavra);

        fclose(f);

    }

}

no txt ele se apresenta assim após a soma


4215762NCIA
MELAO
MORANGO
ABACAXI
AMORA
1 resposta

Olá Daniel.

Testei o código que você mandou e ele funcionou corretamente.

Recomendo que apague o arquivo palavras.txt e comece ele de novo:

3
MELANCIA 
MELAO 
MORANGO 

Vou continuar tentando entender o que gerou esse erro, mas imagino que recomeçar o arquivo palavras.txt já deve resolver. Mas caso problema persista forneça o resto do seu código e me conte qual sistema operacional está utilizando.

Bons Estudos