Menu en C

Fermé
popoff - 6 janv. 2008 à 20:51
 popoff - 6 janv. 2008 à 21:34
Bonjour,

Alors je fait un jeu en ce moment pour un devoir et je suis bloqué sur le menu de celui ci! En effet je voudrait que ma fonction editionMenu m'affiche le menu (comme son nom l'indique) mais des erreurs a la compilation apparaissent! En fait le menu est composé de trois choix et je voudrais par exemple que l'orsequ'on a finit de lire les regles du jeu on retourne au menu en appuyant sur la touche "m" (la aussi un petit prob). les erreurs que me retourne mon compilateur (visual c++)sont 1>.\editionMenu.c(8) : error C2143: erreur de syntaxe : absence de ';' avant '{' et une autre lorseque je met le ";" qu'il me demande.

Je vous laisse le code source, n'hésister pas si vous trouvez des défaut et des idées d'amélioration!
Merci.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>


int main(){

void editionMenu(){
int queFaire;
char retourAuMenu= 'p';
char menu= 'm';

//Affiche le menu du jeu
queFaire=0;
printf("\n=== Bienvenue dans le menu du Jeu de paire ===\n");
printf("=== Que voulez vous faire? ===\n\n");
printf("1: Jouer\n");
printf("2: Lire les regles du jeu\n");
printf("3: Choisir le niveau\n");
printf("Votre choix:");
scanf_s("%d",&queFaire);

//Realise l'option choisie dans le menu (prototype)
switch (queFaire){

case 1:
printf("\nLE JEU EST EN CONSTRUCTION\n");
break;
editionMenu();


case 2:
printf("\n===Regles du Jeu de paire===\n\n");
printf("Vous devez cliquer sur les cases du tableau afin de composer des paires.\n");
printf("Lorsque vous reussissez a composer une paire, les deux cases selectionnees\n");
printf("disparraissent et vous devez en composer une autre.\n");
printf("Le but du jeu est de faire disparaitre toutes les cases en un temps impose.\n");
printf("Bon jeu et bonne chance!\n\n");
printf("Appuyer sur la touche m pour retourner au Menu:");
do{
retourAuMenu = 'p';
scanf_s("%c",&retourAuMenu);
if(retourAuMenu == menu){
printf("\nVous voulez retourner au menu\n");
editionMenu();
}

else{
printf("Appuyer sur la touche m pour retourner au Menu:");
}
}while(retourAuMenu != menu);

case 3:
printf("\nLE CHOIX DES NIVEAUX EST EN CONSTRUCTION\n");
break;
editionMenu();


default:
printf("Saisissez le numero de la ligne corespondant a votre choix\n");
break;
editionMenu();

}
return;
}
return (0);
}
A voir également:

3 réponses

mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
6 janv. 2008 à 21:09
ta fonction doit etre a l'exterieur du main puis tu l'appel dans le main et dans ton switch tes break doivent etre avant les appels de fonction
essaye ça
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void editionMenu(){
int queFaire;
char retourAuMenu= 'p';
char menu= 'm';

//Affiche le menu du jeu
queFaire=0;
printf("\n=== Bienvenue dans le menu du Jeu de paire ===\n");
printf("=== Que voulez vous faire? ===\n\n");
printf("1: Jouer\n");
printf("2: Lire les regles du jeu\n");
printf("3: Choisir le niveau\n");
printf("Votre choix:");
scanf("%d",&queFaire);

//Realise l'option choisie dans le menu (prototype)
switch (queFaire){

case 1:
printf("\nLE JEU EST EN CONSTRUCTION\n");

editionMenu();
break;

case 2:
printf("\n===Regles du Jeu de paire===\n\n");
printf("Vous devez cliquer sur les cases du tableau afin de composer des paires.\n");
printf("Lorsque vous reussissez a composer une paire, les deux cases selectionnees\n");
printf("disparraissent et vous devez en composer une autre.\n");
printf("Le but du jeu est de faire disparaitre toutes les cases en un temps impose.\n");
printf("Bon jeu et bonne chance!\n\n");
printf("Appuyer sur la touche m pour retourner au Menu:");
do{
retourAuMenu = 'p';
scanf("%c",&retourAuMenu);
if(retourAuMenu == menu){
printf("\nVous voulez retourner au menu\n");
editionMenu();
}

else{
printf("Appuyer sur la touche m pour retourner au Menu:");
}
}while(retourAuMenu != menu);

case 3:
printf("\nLE CHOIX DES NIVEAUX EST EN CONSTRUCTION\n");

editionMenu();
break;

default:
printf("Saisissez le numero de la ligne corespondant a votre choix\n");

editionMenu();
break;
}
return;
}
int main(){
editionMenu();

return (0);
}
0
C'est génial ca fonctionne ca fait bien 4 jours que je me casse la tete dessus je te remerci beaucoup pour ton aide tu me retire une belle épine du pied!
Aussi si ce n'est trop abusé tu veux bien aller jettez un coup d'oeil a cette page c'est moi qui ai posté pour un autre probleme!
merci encore A+
0