Não consigo entender onde meu código está gerando este erro. Toda vez que eu o rodo, a saída do acerto e do erro são diferentes do que o esperado.. Saída:
john@Lennon:~/Documentos/C-lang/Programas/hangman$ ./a.out
_ _ _ _ _ _ _ _
M
M E L A N C I A
X
M E L A N C I A
E
M E L A N C I A
Y
M E L A N C I A
Z
M E L A N C I A
Meu código atual (eu montei ele com as variáveis levemente diferentes mesmo).
#include <stdio.h>
#include <string.h>
int main(){
//variáveis
char
palavrasecreta[10],
chute,
chutes[26];
int
ctdr,
ctdr2,
tentativas,
acertou,
enforcou,
achou;
//atribuição de valor inicial (quando necessário).
acertou = 0;
achou = 0;
enforcou = 0;
tentativas = 0;
sprintf(palavrasecreta, "MELANCIA");
//início do jogo
do{
for(ctdr = 0 ; ctdr < strlen(palavrasecreta) ; ctdr++){
for(ctdr2 = 0 ; ctdr2 < tentativas ; ctdr2++){
if (chutes[ctdr2] == palavrasecreta[ctdr2]){
achou = 1;
break;
}
}
if(achou){
printf("%c ", palavrasecreta[ctdr]);
}else{
printf("_ ");
}
}
printf("\n");
scanf(" %c", &chute);
chutes[tentativas] = chute;
tentativas++;
} while(!acertou && !enforcou);
}