tengo la sgte duda el sgt trabajo si me compila pero no me imprime si gane empate o perdi ayuda porfavorrr:
#include <stdio.h>
#include <stdlib.h>
#include <TIME.H>
int c[9]={0,0,0,0,0,0,0,0,0}, turno, jugador;
char denuevo=' ';
char tirada(int i);
int ganador();
void print_gato();
void turno_jugador();
void turno_computadora();
int main()
{
do
{
int h, menu;
printf(" Bienvenido a el juego del gato,\n elija una opcion :\n 1) Jugar.\n 2)salir\n");
scanf("%d", &menu);
printf("\n-1-|-2-|-3-\n");
printf("-4-|-5-|-6-\n");
printf("-7-|-8-|-9-\n");
switch(menu)
{
case 1:
jugador = 1;
turno = 0;
do
{
turno++;
if (jugador) turno_jugador(); else turno_computadora();
print_gato();
}
while ((!ganador())&&(turno<=8));
switch (ganador())
{
case 0:
printf("Ha Empatado");
break;
case 1:
printf("Ha Ganado");
break;
case -1:
printf("Ha Ganado La Maquina, Lo Siento");
break;
system("pause");
}
case 2:
printf("Fue un placer jugar contigo");
getchar();
exit(1);
break;
}
printf("Volver al menu? (si o no) ");
scanf("%s", &denuevo);
if (denuevo>=97) denuevo-=32;
if ((denuevo!='s')&&(denuevo!='n'))
for (h=0;h<=8;h++) c[h]=0;
system("pause");
}
while (denuevo=='S');
getchar();
}
void print_gato()
{
printf("\n %c |%c |%c \n---|---|---\n %c |%c |%c \n---|---|---\n \n%c |%c |%c\n", tirada(c[0]), tirada(c[1]), tirada(c[2]), tirada(c[3]), tirada(c[4]), tirada(c[5]), tirada(c[6]), tirada(c[7]), tirada(c[8]));
}
char tirada(int i)
{
switch (i)
{
case (-1):
return 'X';
break;
case (1):
return 'O';
break;
default:
return ' ';
}
}
int ganador()
{
if ((c[0]+c[1]+c[2]==3)|| (c[3]+c[4]+c[5]==3)|| (c[6]+c[7]+c[8]==3)|| (c[6]+c[3]+c[0]==3)|| (c[7]+c[4]+c[1]==3)|| (c[8]+c[5]+c[2]==3)|| (c[6]+c[4]+c[2]==3)|| (c[8]+c[4]+c[0]==3)) return 1;
else if ((c[0]+c[1]+c[2]==-3)|| (c[3]+c[4]+c[5]==-3)|| (c[6]+c[7]+c[8]==-3)|| (c[6]+c[3]+c[0]==-3)|| (c[7]+c[4]+c[1]==-3)|| (c[8]+c[5]+c[2]==-3)|| (c[6]+c[4]+c[2]==-3)|| (c[8]+c[4]+c[0]==-3)) return -1;
else return 0;
system("pause");
}
void turno_jugador()
{
int quieres;
printf("Le toca, En que casilla Desea jugar? [1-9] ");
scanf("%d",&quieres);
if ((quieres>9)|| (quieres<1)|| (c[quieres-1]!=0))
{
do
{
printf("Ha Ingresado Un Movimiento Invalido, Ingrese una de las opciones requeridas");
fflush(stdin);
scanf("%d",&quieres);
}
while ((quieres>9)|| (quieres<1)|| (c[quieres-1]!=0));
}
c[quieres-1]=1;
jugador = 0;
}
void turno_computadora()
{
int quiero;
time_t t;
printf("le toca a la maquina, juega en la casilla: ");
do
{
srand(time(&t));
quiero=rand()%9;
}
while (c[quiero]!=0);
printf("%dn", quiero + 1);
c[quiero]=-1;
jugador = 1;
}