Bonjour,
j'ai écris un petit programme en C en suivant un tutoriel C. Mais j'ai un léger problème dans ce dernier concernant le test d'un caractère entré au clavier.
Voila ce que je souhaites faire :
- - Récupérer le caractère rentré.
- - Vérifier que le caractère est parmi ceux acceptés
- - Si non, alors on recommence.
Le code est :
Sachant que etat_saisie est definit plus haut dans le fichier par un define (0 pour nOK et 1 pour OK).
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 etat_saisie = nOK; do { char saisie [20]; printf("\n Voulez-vous rejouer ? (Oui (o) ou Non (n)) : "); fgets(saisie, sizeof saisie, stdin); ret = sscanf(saisie,"%c", &rejouer); if (ret != 1) { printf( "\n\t La valeur entree n'est pas une donne valide." "\n\t Veuillez recommencer.\n"); } else if (rejouer != 'o'){ printf( "\n\t La lettre entree n'est pas valide. Seul" "\n\t o (pour oui) et n (pour non) sont valides\n"); } else { etat_saisie = OK; } }
'rejouer' est de type char.
Merci pour votre aide (ou pour tout autre commentaires sur le code).
Partager