Probleme de switch en C

Fermé
Tenki Messages postés 279 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 3 janvier 2014 - 10 janv. 2011 à 19:31
Tenki Messages postés 279 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 3 janvier 2014 - 10 janv. 2011 à 20:15
Bonjour,
j'ai un probleme en C la compilation marche bien mais j'arrive pas a faire en sorte que le jeux change de difficulter...



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


int main ( int argc, char** argv )
{
int mode;
printf("===Choix du Mode===\n\n");
printf("-1 Facile\n");
printf("-2 Moyen\n");
printf("-3 Difficile\n");

printf("\n\n");

scanf("%d", &mode); /*le choix de la difficulter */




switch (mode)
{
case 1:
printf("Mode facile\n\n");
break;



}

int rechoix;



printf("1-Voulais vous commencez?\n\n");
printf("2-retour au choix des modes");
scanf("%d", &rechoix);

switch (rechoix)
{


case 1:
printf("vous allez commencer\n\n");



int nombreMystere = 0, nombreEntre = 0; // jeux en mode facile max = 100
const int MAX = 100, MIN = 1;

// Génération du nombre aléatoire

srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;

/* La boucle du programme. Elle se répète tant que l'utilisateur
n'a pas trouvé le nombre mystère */

do
{
// On demande le nombre
printf("Quel est le nombre ? ");
scanf("%d", &nombreEntre);

// On compare le nombre entré avec le nombre mystère

if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere !!!\n\n");
} while (nombreEntre != nombreMystere);


case 2:
printf("retour au mode\n\n"); //pour retourner au menu

int mode;
printf("===Choix du Mode===\n\n");
printf("-1 Facile\n");
printf("-2 Moyen\n");
printf("-3 Difficile\n");

printf("\n\n");

scanf("%d", &mode);
break;

}
switch (mode)
{

case 2: //Choix moyen dans le menu du debut
printf ("Mode Moyen\n\n");
break;


}
int (choixMoyen);



printf("1-Voulais vous commencez?\n\n");
break;
printf("2-retour au choix des modes");
scanf("%d", &choixMoyen);




switch (choixMoyen)
{



case 1:
printf("vous allez commencer\n\n");// deja la il retoure au a case1 du switch(rechoix) et me donne le jeu en version facil avec max 100
printf("\n\n");




int nombreMystere = 0, nombreEntre = 0;
const int MAX = 1000, MIN = 1; //jeu en mode moyen max 1000

// Génération du nombre aléatoire

srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;

/* La boucle du programme. Elle se répète tant que l'utilisateur
n'a pas trouvé le nombre mystère */

do
{
// On demande le nombre
printf("Quel est le nombre ? ");
scanf("%d", &nombreEntre);

// On compare le nombre entré avec le nombre mystère

if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere !!!\n\n");
} while (nombreEntre != nombreMystere);



}
return 0;
}



Quand je je vais dans moyen il me demende bien de commencer le message commencer s'affiche mais il me lance le jeu avec max=100 au lieu de max=1000

de plus j'ai essay de changer le prinft de case 1 du choix moyen mais sa le fait pas en gros je suis renvoyer au prinft de case 1 du rechoix...

je sais pas si j'ai etait clair...

merci

A voir également:

2 réponses

blackdam Messages postés 327 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 13 février 2015 35
10 janv. 2011 à 20:03
Et pourquoi ne pas faire un switch juste pour entrer le nombre de possibilité? je pense qu'il doit y avoir des soucis avec tes "switch / break" ...
Genre (désolé ça fait lgt que je n'ai pas fait de C donc niveau syntaxe ça va être de l'algo)
1. Faire le choix de l'utilisateur (1:facile, 2:moyen, 3:difficile)
2. En fonction du choix de l'utilisateur : const int MAX = 10 / 100 / 1000
3. Faire le reste du programme


Compris?
0
Tenki Messages postés 279 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 3 janvier 2014 21
10 janv. 2011 à 20:15
et bien en faite c'est parceque je veut m'entrainer je voulais faire un switch sur un autre switch

genre:
il choisie sont mode 1 2 ou 3
dans le mode 1 2 ou 3 il lui demende la confirmation ou le retour au menu

Puis ensuite si il confirme alors le jeu ce lance avec le mode qu'il a choisie moi j'ai fait 1 = 100 2=1000 3(je l'ai pas encore faite je voulais voir si sa bugger avant hihi)=10000

j'essay de changer quelque truc mais rien a faire...
0