Structure while en C
Bonjour,
je voudrais creer une boucle qui est
tant que l'utilisateur entre une lettre differente de 'n 'on reste dans la boucle en lui posant tjrs la meme question
voici ce que j'ai fait
mais ne marche pas
une solution?
je voudrais creer une boucle qui est
tant que l'utilisateur entre une lettre differente de 'n 'on reste dans la boucle en lui posant tjrs la meme question
voici ce que j'ai fait
char rep;
main(void){
do{
printf("Entrer la lettre n \n");
scanf("%c",&rep);
}
while (rep!='n');
mais ne marche pas
une solution?
2 réponses
-
Bonjour,
ça te met quoi exactement ? Là pour le moment je peux pas tester mais essaye peut-être avec la fonction strcmp pour comparer les 2 chaines. -
ContributeurBonjour,
Ceci est normal, car il faut faire un flush du buffer clavier. Sinon le '\n' sera considéré comme un caractère.
Cdlt,-
-
ContributeurCela donnerait :
int main(void) { do { int rep,c; printf ("...."); fflush(stdout); rep=getchar(); while( (c=getchar()) != '\n' && c != EOF); } while(rep!='n'); return 0; }
Cela doit pouvoir s'écrire de manière plus concis, mais le squelette doit fonctionner. A toi de t'en inspirer.
Cdlt,
-