Voici un code qui presente le menu d un restaurant , le probleme est que lorsque je rentre un choix je dois le taper 2 fois avant que le message dans la boucle s affiche.
Quelqu un peux m aider ?
#include <stdio.h>
int main ()
{
int choixMenu;
printf("===Menu===");
printf ("1-Royal Cheese\n");
printf ("2-Mc Bacon\n");
printf ("3-Mc Delux\n");
printf ("4-Hamburger\n");
printf ("\n");
printf ("Votre Choix\n");
scanf ("%d",&choixMenu");
switch (choixMenu)
{
case 1: printf ("Vous avez choisi le menu Royal Cheese\n");
break;
case 2: printf ("Vous avez choisi le menuMc Bacon \n");
break;
case 3: printf ("Vous avez choisi le menu Mc Delux\n");
break;
case 4: printf ("Vous avez choisi le menu shawarma \n");
break;
default:printf ("Vous n avez pas encore choisi\n");
}
return 0;
}
La coloration syntaxique du forum met en évidence une erreur de syntaxe.
Je ne pense pas que ton problème vienne de là, le compilateur t’aurait déjà envoyé balader.
Je n’ai pas pratiqué le C depuis de nombreuses années, mais je me souviens que ta façon de récupérer la valeur n’est pas conseillée.
Essaie un truc de ce genre pour voir :
#include <stdio.h>
int main () {
int choixMenu;
printf("===Menu===\n");
printf ("1-Royal Cheese\n");
printf ("2-Mc Bacon\n");
printf ("3-Mc Deluxe\n");
printf ("4-Hamburger\n");
printf ("\n");
printf ("Votre Choix\n");
scanf ("%d",&choixMenu);
switch (choixMenu) {
case 1:
printf ("Vous avez choisi le menu Royal Cheese\n");
break;
case 2:
printf ("Vous avez choisi le menu Mc Bacon\n");
break;
case 3:
printf ("Vous avez choisi le menu Mc Deluxe\n");
break;
case 4:
printf ("Vous avez choisi le menu Hamburger\n");
break;
default:
printf ("Vous n'avez pas encore choisi\n");
}
return 0;
}
Ça semble se compiler chez moi et faire ce que j’ai l’impression que tu veux faire.
Pour l’indentation, j’utilise principalement Python pour la programmation, je trouve ça plus clair comme ça.
si j’en crois mon analyse de l’écriture moderne ( non utilisation des temps des verbes, des ponctuations, oublie de la fin de la démonstration ) il veut dire qu’il a écrit