Jogo da velha em C purinho
Publicado por Djames Suhanko 21/02/2005
[ Hits: 13.119 ]
Homepage: http://phantomclone.com
Fiz esse jogo da velha ha
alguns anos em C purinho,
usando apenas a biblioteca
padrão. Não é fantástico, mas
é interessante. Espero que
gostem.
PS: em algumas versões do gcc
não funfa mais. :-(
No windows vai blz, basta
mudar o "cls" para "clear"
#include <stdio.h>
//Jogo da velha, por Djames Suhanko.
int fim;
char nome2[20];
char nome1[20];
int count;
char jogador;
int i, troca;
char casa[3];
char um[20],dois[20],tres[20],quatro[20],cinco[20],seis[20],sete[20];
char oito[20],nove[20],dez[20],onze[25],doze[20],treze[20];
main()
{
int volta=0;
i=0;
for (count=0; count<17; count++)
{
um[i] = ' ';
dois[i] = ' ';
tres[i] = ' ';
quatro[i] = ' ';
cinco[i] = '_';
seis[i] = ' ';
sete[i] = ' ';
oito[i] = ' ';
nove[i] = '_';
dez[i] = ' ';
onze[i] = ' ';
doze[i] = ' ';
treze[i] = ' ';
i=i++;
}
i=5;
for (count=0; count<2; count++)
{
um[i] = '|';
dois[i] = '|';
tres[i] = '|';
quatro[i] = '|';
cinco[i] = '|';
seis[i] = '|';
sete[i] = '|';
oito[i] = '|';
nove[i] = '|';
dez[i] = '|';
onze[i] = '|';
doze[i] = '|';
treze[i] = '|';
i=i+6;
}
jogador = '*';
system("clear");
printf("Entre com o nome do jogador(a) 1:\n");
fflush(NULL);
scanf("%s",&nome1);
printf("Entre com o nome do jogador(a) 2:\n");
fflush(NULL);
scanf("%s",&nome2);
VOLTA: system("cls");
/*##### Encerrar o jogo #####*/
if (quatro[2] == quatro[8] && quatro[8] == quatro[14] && quatro[14] != ' ' || quatro[2] == sete[2] && onze[2] == sete[2] && sete[2] != ' ' || quatro[2] == sete[8] && sete[8] == onze[14] && onze[14] != ' ' || quatro[8] == sete[8] && quatro[8] == onze[8] && onze[8] != ' ' || quatro[14] == sete[14] && sete[14] == onze[14] && onze[14] != ' ' || onze[2] == sete[8] && sete[8] == quatro[14] && quatro[14] != ' ' || onze[2] == onze[8] && onze[8] == onze[14] && onze[14] != ' ')
{
if (jogador == 'X')
{
printf("Fim de jogo.\nJogador(a) %c, %s venceu!\n", jogador, nome1);
}
else
{
printf("Fim de jogo.\nJogador %c, %s venceu!\n", jogador, nome2);
}
}
/*############################################*/
printf(" A B C\n\n");
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", tres[i]);
i=i++;
}
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", quatro[i]);
i=i++;
}
printf(" 1");
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", cinco[i]);
i=i++;
}
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", seis[i]);
i=i++;
}
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", sete[i]);
i=i++;
}
printf(" 2");
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", nove[i]);
i=i++;
}
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", dez[i]);
i=i++;
}
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", onze[i]);
i=i++;
}
printf(" 3");
printf("\n");
i=0;
for (count=0; count<17; count++)
{
printf("%c", doze[i]);
i=i++;
}
printf("\n\n\n");
printf(" Jogo da Velha - Por: Djames Suhanko\n\n");
printf("Opções:\n novo - para novo jogo, a qualquer momento\n");
printf(" sair - para sair do jogo a qualquer momento\n");
printf("\nEntre Com uma coordenada: \n >>> ");
if (jogador == '*')
{
printf("Jogador X: %s\n", nome1);
}
else if (jogador == 'X')
{
printf("Jogador *: %s\n", nome2);
}
fflush(NULL);
scanf("%s",&casa);
if (!strcmp(casa,"a1"))
{
troca = 1;
}
if (!strcmp(casa,"b1"))
{
troca = 2;
}
if (!strcmp(casa,"c1"))
{
troca = 3;
}
if (!strcmp(casa,"a2"))
{
troca = 4;
}
if (!strcmp(casa,"b2"))
{
troca = 5;
}
if (!strcmp(casa,"c2"))
{
troca = 6;
}
if (!strcmp(casa,"a3"))
{
troca = 7;
}
if (!strcmp(casa,"b3"))
{
troca = 8;
}
if (!strcmp(casa,"c3"))
{
troca = 9;
}
if (!strcmp(casa,"sair"))
{
troca = 0;
}
if (!strcmp(casa,"novo"))
{
troca = 11;
}
switch(troca)
{
case 1:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (quatro[2] != 'X' && quatro[2] != '*')
{
quatro[2] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case 1a
case 2:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (quatro[8] != 'X' && quatro[8] != '*')
{
quatro[8] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case b1
case 3:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (quatro[14] != 'X' && quatro[14] != '*')
{
quatro[14] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case c1
case 4:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (sete[2] != 'X' && sete[2] != '*')
{
sete[2] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case a2
case 5:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (sete[8] != 'X' && sete[8] != '*')
{
sete[8] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case b2
case 6:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (sete[14] != 'X' && sete[14] != '*')
{
sete[14] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case c2
case 7:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (onze[2] != 'X' && onze[2] != '*')
{
onze[2] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case a3
case 8:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (onze[8] != 'X' && onze[8] != '*')
{
onze[8] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case b3
case 9:
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
if (onze[14] != 'X' && onze[14] != '*')
{
onze[14] = jogador;
goto VOLTA;
}
else
{
if (jogador == '*') {
jogador = 'X';
}
else if (jogador == 'X') {
jogador = '*';
}
goto VOLTA;
}
} //case c3
case 0:
{
return 0;
}
case 11:
{
quatro[2] = ' ';
quatro[8] = ' ';
quatro[14] = ' ';
sete[2] = ' ';
sete[8] = ' ';
sete[14] = ' ';
onze[2] = ' ';
onze[8] = ' ';
onze[14] = ' ';
}
default:
{
goto VOLTA;
}
} //switch
}
Salario bruto e liquido de um funcionario
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (7)
De volta para o futuro - ou melhor, para o presente (parte 2) (0)









