merci pour vos réponses 
Obsidian> ce code fonctionne car j'ai 2 fois la ligne "scanf("%c", &car);"
si j'en enlève une, il ne me demande pas de taper ma lettre.
J'ai réussi à régler le problème en ajoutant un "getchar();" à la place du 2eme "scanf("%c", &car);"
J'ai aussi trouvé une solution avec une fonction qui vide le tampon de scanf...
Mais je n'arrive pas à comprendre pourquoi le tampon n'est pas vide à ce moment de l'execution..
J'ai ajouté
printf ("Valeur hexadécimale du caractère : %x\n",(unsigned int)car);
Il m'affiche : a comme résultat... donc il y a bien quelque chose dans le tampon...
A vaut 10, ça correspond à un saut de ligne je crois... je ne comprends pas ce qu'il fait la..
khouya.m> je ne peux pas utiliser conio.h, je suis sous linux :$
> j'ai compris... scanf ne lit que les carractères avant le \0... qui reste donc dans le cache après la dernière saisie...
Je pense que tout ça sera expliqué un peu plus loin dans mon cours.. j'en suis qu'au chapitre 4 :$
Partager