3
respostas

[Dúvida] Compila, mas não consegue abrir o arquivo.txt

print do terminal sem identificar o arquivo o arquivo está todo certinho, mas dá como arquivo não encontado.

#include <stdio.h> #include <string.h> #include <time.h> #include <stdlib.h>

char palavrasecreta[20]; char chutespossiveis[26]; int chutes_dados = 0;

void abertura(){ printf("*************\n"); printf("JOGO DA FORCA \n"); printf("*************\n\n");

}

void funcao_chute(){ char chute; printf("Insira uma letra (chute): "); scanf(" %c", &chute); getchar();

chutespossiveis[chutes_dados] = chute;
chutes_dados++;

}

int verificacao(char letra){

for(int i = 0; i < chutes_dados; i++) {
    if(chutespossiveis[i] == letra) {
        return 1;
    
    }
}

return 0;

}

void forca(){

for(int i = 0; i < strlen(palavrasecreta); i++) {

        if(verificacao(palavrasecreta[i])) {
            printf("%c ", palavrasecreta[i]);

        } else {
            printf("_ ");
        }

    }
    printf("\n");

}

void palavraescolhida(){ FILE* arquivo = fopen("palavras.txt","r"); if (arquivo == NULL){ printf("erro ao abrir arquivo"); }

int num_palavras = 0; fscanf(arquivo, "%d", &num_palavras);

int num = time(0); srand(num); int aleatorio = rand() % num_palavras;

for (int i = 0; i <= aleatorio; i++){
    fscanf(arquivo, "%s", palavrasecreta);

}

fclose(arquivo);

}

int acertou(){

for (int i = 0; i < strlen(palavrasecreta); i++){
    if(!verificacao(palavrasecreta[i])){
        return 0;
    }
}
return 1;

}

int enforcou(){

int erros = 0;

    for(int i = 0; i < chutes_dados; i++){
        int chutevalido = 0;

        for(int j = 0; j < strlen(palavrasecreta); j++){
            if(verificacao(palavrasecreta[j])){
                chutevalido = 1;
                break;

            }

        }

    if(!chutevalido){
        erros++;

    }

}
return erros >= 5;

}

int main(){

palavraescolhida();
abertura();

do{
    funcao_chute();
    forca();

} while (!acertou() && !enforcou());

}

3 respostas

Olá Brenda,

Recomendo anexar um print do terminal/console para dar mais informações a quem for te auxiliar.

Olá Renan, Anexei agora!

Você tem certeza que os arquivos estão na pasta certa?