Scanf provoque le blocage du programme C

Ce simple problème provoque la panne de tout mon programme lors de la première entrée. Si je supprime l’entrée, le programme fonctionne correctement, mais une fois que j’ajoute scanf dans le code et que je saisis l’entrée, le programme se bloque.

#include  #include  #include  #define MAXEMPS 3 // stub program code int main (void){ char answer; do { printf("\n Do you have another(Y/N): "); scanf("%c", answer); }while(answer == 'Y' || answer == 'y'); getchar(); printf(" Press any key ... "); return 0; } // main 

Vous devez passer l’adresse de la variable à scanf:

  scanf("%c", &answer); 

Utilisez “& answer”. Et débarrassez-vous des commandes “fflush ()” superflues …

Mieux, remplacez “answer = getchar ()”.