problema en ejecucion: ahorcado

Iniciado por priskot17, 20 Octubre 2016, 21:14 PM

0 Miembros y 1 Visitante están viendo este tema.

priskot17

Hola, se me pidió hacer un ahorcado y me surgieron un par de problemas a la hora de la ejecución. el programa es el siguiente:

#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#define N 100

int main ()
{
/*Declaracion de variables*/
int i, j, k, espacios ,fallidos, exito, letras, si, no;
char letra;
char palabra[N], juego[N];
k=0;
    letras=0;
    exito=0;
    si=0;
    no=0;
    printf("Bievenido, esto es ahorcado, un juego para dos donde un administrador escribe una palabra/frase y el otro tendra que adivinarla.");
    printf("\nADVERTENCIA: cada vez que hagas un intento fallido, estaras mas cerca de ser ahorcado y perder el juego.");
    printf("\nComenzemos, administrador, ingrese la palabra/frase y finalice con un punto: ");
    gets (palabra);
    /*escribir espacios iniciales*/
    while(palabra[k]!='.'){
   
if(palabra[k]!=32){
juego[k]='_';
letras=letras+1;
}else{
juego[k]=' ';
}
k=k+1;
}
espacios=k;
/*recibir letra y rellenar si es correcto*/
while(fallidos<8 && exito!=1){
printf("\n%s", juego);
printf("\nJugador 2, digite una letra: ");
scanf("%c", &letra);
for (i=0;i<=espacios;i++){
if(letra==palabra[i]){
juego[i]=letra;
si=si+1;

if(si==letras){
exito=1;
}
}
if(letra!=palabra[i]){
no=no+1;

if(no==espacios){
fallidos=fallidos+1;
no=0;
}
}
}
}
if(fallidos==8){
printf("\nHas perdido. Fin.\n");
}
if(exito==1){
printf("\nHas ganado. Felicitaciones!\n");
}
system("pause");
return(0); 
}


1er problema: los espacios de la palabra se generan bien, (ej: mama. = _ _ _ _) pero al ingresar una letra (sea o no correcta) me escribe dos veces seguidas (printf("\n%s", juego); printf("\nJugador 2, digite una letra: ")) esos printf.... por qué?

2do problema: cuando el admin ingresa la palabra (ej: foro el hacker.)los espacios salen normal. pero cuando ingreso santiago o jeronimo (no he encontrado mas ejemplos donde me ocurra esto) aparecen los espacios seguidos de simbolos (ej: santiago.= _ _ _ _ _ _ _ _ 1'@).

AYUDA
GRACIAS.

MOD: Etiquetas GeSHi.