Organisation du code pour un pendu
Bonjour à tous,
Je suis depuis peu les cours de C et je dois réaliser un TP qui consiste à créer un jeu du pendu dans lequel le joueur a 10 essais. Je suis un peu (beaucoup) perdu, j'ai essayé d'organiser mes idées sur papier, et de laisser ce que je n'arrivais pas à traduire en code en français.
Ainsi il me manque deux fonctions, que j'ai remplacé par du français dans mon code :
- La première est une fonction qui affiche le mot recherché en remplaçant les lettres qui n'ont pas été trouvées par des "*".
- La seconde vérifierait si toutes les lettres du mot ont été trouvées ou non.
J'ai sûrement fait un très grand nombre d'erreurs, & je serai ravi qu'on me les fasse remarquer. Voici mon code pour main.c :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| #include <stdio.h>
#include <stdlib.h>
#include "main.h"
#include <ctype.h>
int main(int argc, char *argv[])
{
char lettreEntre[10]; // Pour enregistrer les 10 lettres que va taper le joueur
char motSecret[] = "ROUGE"; // Le mot à trouver
char *pointeurMotSecret = &motSecret; // Pointeur sur le mot secret
char *pointeurLettre = &lettreEntre; // Pointeur sur la lettre que va taper le joueur
int i = 10; // Les 10 coups à jouer
char *lettreTrouve = NULL; // Pointeur qui enregistre si on a trouvé le caractère entré
for (i = 10; i > 0, Toutes les lettres ne sont pas trouvées; i -1)
{
printf("Il vous reste %d essais\n", i);
printf("Quel est le mot ? Entrez un caractere\n", Afficher motSecret avec lettres trouvées);
lettreEntre[i] = lireCaractere();
lettreTrouve = strchr(motSecret, *pointeurLettre); // On recherche le caractère entré dans motSecret
if (lettreTrouve != NULL) // S'il y est, on rajoute un coup
{
i ++;
}
}
if (Toutes les lettres sont trouvées)
{
printf("Bravo, le mot était bien %s", motSecret);
}
else
{
printf("Perdu");
}
return 0;
} |
Et pour main.h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| #ifndef DEF_MAIN.H // Si la constante n'a pas été définie le fichier n'a jamais été inclus
#define DEF_MAIN.H // On définit la constante pour que la prochaine fois le fichier ne soit plus inclus
char lireCaractere()
{
char caractere = 0;
caractere = getchar(); // On lit le premier caractère
caractere = toupper(caractere); // On met la lettre en majuscule si elle ne l'est pas déjà
// On lit les autres caractères mémorisés un à un jusqu'au \n (pour les effacer)
while (getchar() != '\n') ;
return caractere; // On retourne le premier caractère qu'on a lu
}
#endif |
Merci d'avance