Bonjour,
j'ai un soucis avec une portion de code et je n'arrive pas a en trouver l'origine.
cette portion de code fonctionne normalement si la saisie utilisateur est bien un entier, mais si l'utilisateur saisie une lettre le programme boucle sans redonner la main a l'utilisateur pour saisir une nouvelle entrée. C'est comme si le programme s'auto-alimentait ??
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 int saisie; int test=1; while (test) { printf("Saisissez un entier entre 1 et 3\n"); scanf("%d",&saisie); if (saisie<1 || saisie>3) { printf("votre saisie n'est pas conforme, recommencez"); test=1; } else { test=0; } }
j'ai bien essayer en rajoutant fflush(stdin); avant le scanf mais cela ne change rien.
je précise qu'a la compilation gcc -Wall je n'ai aucune alerte.
une ame charitable pourrait elle m'expliquer ce qui ce passe.
Partager