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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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