1
resposta

Mesmo após escrever o programa identico, ele não reconhece as letras imput no jogo da forca.

  1. ****Insira aqui a descrição dessa imagem para ajudar na acessibilidade#include <stdio.h> #include <string.h>

void abertura (){ printf("****\n"); printf("* Jogo de Forca \n"); printf("***\n"); }

void chuta(char chutes[26], int tentativas){ char chute; scanf(" %c", &chutes);

chutes[tentativas] = chute;

}

int main() {

char palavrasecreta[20];
sprintf(palavrasecreta, "MELANCIA");

int acertou = 0;
int enforcou = 0;

char chutes[26];
int tentativas = 0;

abertura();



do {

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

        for(int j = 0; j < tentativas; j++) {
            if(chutes[j] == palavrasecreta[i]) {
                achou = 1;
                break;
            }
        }

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


    chuta(chutes, tentativas);
    tentativas++;


} while (!acertou && !enforcou);

}

//Já tentei pelo sublime e pelo code blocks, mas quando rodo o programa as letras não entram pra forca . Alguém pode me ajudar?

1 resposta

No scanf dentro da função acho que voce esta lendo a variavel errada. scanf(" %c", &chutes);

Deveria ler a variavel chute. scanf(" %c", &chute);