2
respostas

Deixando o código aqui

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

// VARIAVEIS GLOBAIS
char palavrasecreta[20];
char chutes[26];
int tentativas=0;      


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


    void chuta(){       
        char chute;
        scanf(" %c",&chute);      
        chutes[tentativas] = chute;
        tentativas++;
    }


    int jachutou(char letra){

    int achou = 0;

        for( int j=0; j<tentativas; j++){

            if(chutes[j] == letra){
            achou = 1;
            break;
            }
        }
    return achou;
    }


    void desenhoforca(){
    for(int i=0; i < strlen(palavrasecreta); i++){
        int achou = jachutou(palavrasecreta[i]);

            if(achou){
                printf("%c ",palavrasecreta[i]);
            }else{
            printf("_ ");
            }
    }
    printf("\n");
}


void escolherpalavra(){

    sprintf(palavrasecreta, "MELANCIA");
    }



int main() 
{
    setlocale(LC_ALL,"Portuguese");

   int acertou=0;                    // false
   int enforcou=0;                  // true


   escolherpalavra();
   abertura();

do{

    desenhoforca();

    chuta();

}while(!acertou && !enforcou);     

}
2 respostas

Parabéns pelo código. Gostei do uso da biblioteca locale.h. Entretanto, tentei usar e, no meu caso, continua aparecendo caracteres estranhos no lugar de ã ou ç, por exemplo. É necessário fazer alguma configuração adicional no Windows?

Então, dentro da função main, você tem que adicionar o seguinte código: setlocale(LC_ALL,"Portuguese");