Created
June 12, 2016 16:06
-
-
Save isagallerani/836bcdd3d67c4edc05d7386e53011d8e to your computer and use it in GitHub Desktop.
Jogo Perfil
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include <stdlib.h> | |
#include <string.h> | |
#include <ctype.h> | |
#define NCARTAS 5 | |
#define NDICAS 3 | |
typedef struct Carta { | |
char* dicas[NDICAS]; | |
char* personagem; | |
int usada; | |
} Carta; | |
int Jogo (Carta*, int); | |
void Maiusculas (char*); | |
int Compara (char*, char*); | |
int main () { | |
int opt, i; | |
Carta cards[NCARTAS]; | |
cards[0].personagem = "JOHNNY DEPP"; | |
cards[0].dicas[0] = "Ator, musico, produtor e diretor de cinema americano"; | |
cards[0].dicas[1] = "Ja protagonizou com Angelina Jolie"; | |
cards[0].dicas[2] = "FIlme de maior bilheteria: Piratas do Caribe"; | |
cards[0].usada = 0; | |
cards[1].personagem = "LEONARDO DICAPRIO"; | |
cards[1].dicas[0] = "Ganhou seu primeiro Oscar em 2016"; | |
cards[1].dicas[1] = "Namorou modelos como Gisele Budchen, Bar Refaeli."; | |
cards[1].dicas[2] = "Protagonista do filme The Great Gatsby"; | |
cards[1].usada = 0; | |
cards[2].personagem = "PERSONAGEM 3"; | |
cards[2].dicas[0] = "dica1"; | |
cards[2].dicas[1] = "dica2"; | |
cards[2].dicas[2] = "dica3"; | |
cards[2].usada = 0; | |
cards[3].personagem = "PERSONAGEM 4"; | |
cards[3].dicas[0] = "dica 1"; | |
cards[3].dicas[1] = "dica 2"; | |
cards[3].dicas[2] = "dica 3"; | |
cards[3].usada = 0; | |
cards[4].personagem = "PERSONAGEM 5"; | |
cards[4].dicas[0] = "dica 1"; | |
cards[4].dicas[1] = "dica 2"; | |
cards[4].dicas[2] = "dica 3"; | |
cards[4].usada = 0; | |
for (i = 0; i < NCARTAS; i++) { | |
int control; | |
printf ("\nSelecione sua carta: "); | |
scanf ("%d", &opt); | |
control = Jogo (cards, opt); | |
if (control == 0) { | |
i--; //se a carta é invalida, o contador não soma. | |
} | |
} | |
return 0; | |
} | |
int Jogo (Carta* cards, int opt) { //faz o jogo "rodar", retorna 1 se a carta escolhida é valida, 0 caso contrário | |
int acertou = 0, i; | |
char palpite[100]; | |
if (cards[opt-1].usada == 0) { | |
for (i=0; i < NDICAS; i++) { | |
printf ("%s\nDigite seu palpite: ", cards[opt-1].dicas[i]); | |
__fpurge(stdin); | |
gets (palpite); | |
acertou = Compara (cards[opt-1].personagem, palpite); | |
if (acertou==1){ | |
printf ("\n**********Acertou**********\n"); | |
break; | |
} | |
else | |
printf ("\n***Errow***\n "); | |
} | |
if (acertou==0) printf ("A resposta era: %s\n", cards[opt-1].personagem); | |
cards[opt-1].usada = 1; | |
return 1; | |
} else { | |
printf ("Carta ja usada, selecione outra"); | |
return 0; | |
} | |
} | |
void Maiusculas (char* frase) { //passa todas as letras de uma string para maiuscula | |
int i; | |
for (i = 0; i < strlen (frase); i++) { | |
frase[i] = toupper(frase[i]); | |
} | |
} | |
int Compara (char* str1, char* str2) { //compara a resposta do usuário com a resposta correta, retorna 1 se acertou, 0 se errou | |
Maiusculas(str2); | |
if (strcmp(str1, str2) == 0) | |
return 1; | |
else return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment