Bonjour,
J'ai actuellement un problème qui peut paraître tout bête mais que je ne parviens pas à résoudre. Je suis en train de programmer en C un pendu (sans interface graphique)(cf M@teo) et je bloque sur une valeur :
Voila ce que ça m'affiche sur la cmd :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 puts(motsecret) ; char verif[longchaine] ; puts(motsecret) ;
les caractères à partir du "&" correspondent à ça : "╝▄<"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 MAISON MAISO╝▄<
Les deux premiers char s'affichent sans problème jusqu'au moment ou je place char verif, longchaine étant une variable qui marche sur les autres char
Je vous fournis la partie du code concerné :
C'est surement très brouillon pour vous mais je viens juste de commencer et j'ai fait ce qui me semblait logique et accessible
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
44
45
46
47
48
49
50
51
52
53
54
55 #include <stdio.h> #include <stdlib.h> #include <string.h> #include "entrerlettre.h" #include "dico.h" int main(int argc, char* argv[]) { int continuer = 1 ; while (continuer == 1) { printf("\n== Bonjour et bienvenue sur le jeu du pendu ! ==") ; printf("\n Vous avez 10 essais faux pour chaque partie\n") ; char malettre = 0 ; int coups = 0 ; int coupsmax = 10 ; char motsecret[] = {0} ; piocherMot(motsecret) ; int longchaine =0 ; longchaine = strlen(motsecret) ; char motcode[longchaine] ; puts(motsecret) ; char (verif[longchaine] ); puts(motsecret) ; int lettretrouvee = 0 ; int i = 0 ; sprintf(verif,"\n**************") ; sprintf(motcode,"\n**************") ; while (lettretrouvee != longchaine) { i = 0 ; strcpy(verif,motcode) ; if (coups == coupsmax) { printf("\n-- Vous etes des a present pendu.. --\n\n") ; printf("Voulez-vous faire une autre partie ? \n\n1. OUI\n0.NON\nVotre choix : ") ; scanf("%d",&continuer) ; exit(0) ; } printf("\n\nDemandez une lettre : ") ; malettre = lire() ; while (i != longchaine) { if (malettre == motsecret[i]) { lettretrouvee++ ; (motcode[i]) = (motsecret[i]) ;} printf("%c",motcode[i]) ; i++ ; } printf("\nVous avez trouvé %d lettre sur les %d ! \n",lettretrouvee,longchaine) ; if (strcmp(verif,motcode)==0) {coups++ ;} printf("Il vous reste encore %d coups a jouer ! ",coupsmax - coups) ; } printf("\n==Felicitation, vous avez reussis en %d coups ! ==",coups) ; printf("\nVoulez-vous faire une autre partie ? \n\n1. OUI\n0. NON\nVotre choix : ") ; scanf("%d",&continuer) ; } return 0 ; }
Merci de vos réponses et si vous voulez pluss d'info dites le moi
Cordialement
Un aspirant à la programmation
Partager