Salut a tout,![]()
j'ai un probleme avec la realisation du jeu de pendu, voila mon code source
Main.c
pendu.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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 #include <stdio.h> #include <stdlib.h> #include "pendu.h" #include <ctype.h> int main(int argc, char *argv[]) { long i, coups=10; char motSecret[]="MOTSECRET", motCache[]="*********"; char lettreEntree; printf("Jeu de pendu \n"); while(gagne(motSecret, motCache)!=0 && coups>0)// tant que le joueur n'a pas gagner et qu'il lui reste encore des coups { printf("Entrer une lettre:\n"); lettreEntree=lireCaractere(); //on demande au joueur d'entrer une lettre a l'aide de la fonction lireCaractere qui est situee dans pendule.c for(i=0; motSecret[i] != '\0'; i++) { if(lettreEntree==motSecret[i]) // on compare la lettre entree avec les lettre du mot secret { motCache[i]=lettreEntree; // si elle est identique a l'une des lettre on la revele } } printf("%s", motCache); //on affiche le mot cache coups--; printf("Il vous reste %ld coups.\n ", coups ); } system("PAUSE"); return 0; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char lireCaractere(); int gagne (char*, char*);
pendu.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 char lireCaractere() { char caractere=0; caractere = getchar(); caractere = toupper(caractere); while (caractere != '\n' ); return caractere; } int gagne(char motSecret[], char motCache[]) { long i, gagne=0; char caractere = -1; for(i=0; caractere != '\0'; i++) { caractere = motSecret[i]; if(caractere != motCache[i]) { gagne++; } } return gagne; }
Je suis sous Visual C++, le programme s'execute mais des que j'entre une lettre il s'arrete je ne sais pas pourquoi???
Merci d'avance !!
------------------------------------------------------------*--------------------
JiYd@Configuration: Windows Vista
Internet Explorer 7.0
Partager