Switch (variable) case en C

Fermé
wachbaik Messages postés 55 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 25 septembre 2012 - 7 nov. 2009 à 13:07
marven23 Messages postés 71 Date d'inscription samedi 11 juillet 2009 Statut Membre Dernière intervention 20 août 2013 - 7 nov. 2009 à 14:04
Bonjour,
comment faire ce ci en C :
switch (valeur){
case (valeur > 0) :
printf("admet 2 solutions : ");
printf(" bien");;
case 0 :
printf("moyen");
case (valeur < 0) :
printf("mauvais") ;
}

autrement qu'avec if /else if / else ...
Merci
A voir également:

4 réponses

marven23 Messages postés 71 Date d'inscription samedi 11 juillet 2009 Statut Membre Dernière intervention 20 août 2013 2
7 nov. 2009 à 13:13
Salut,

https://www.commentcamarche.net/contents/111-langage-c-les-structures-conditionnelles


@+
0
wachbaik Messages postés 55 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 25 septembre 2012
7 nov. 2009 à 13:26
conclusion je ne peux faire ça qu'avec if / else if / else ???
0
marven23 Messages postés 71 Date d'inscription samedi 11 juillet 2009 Statut Membre Dernière intervention 20 août 2013 2
7 nov. 2009 à 13:33
oui,

si tu as bien lu le cour : il précise "Valeur1" donc on peut pas lui donner un booléan (valeur < 0)


switch (Variable) {

case Valeur1 :
Liste d'instructions;

}

Bon courage

@+
0
skuti Messages postés 53 Date d'inscription dimanche 27 septembre 2009 Statut Membre Dernière intervention 29 janvier 2013 2
7 nov. 2009 à 13:49
int retour(int valeur)
{
    if(valeur > 0)
        valeur = 1;

    return valeur;
}


int main(void)
{
    int valeur;
    printf("Quel est la valeur : ");
    scanf("%d",&valeur);
    printf("\n\n");
    valeur = retour(valeur);

    switch (valeur){
        case 1:
            printf("\nadmet 2 solutions : ");
            printf(" bien");
        break;
        case 0 :
            printf("moyen");
        break;
        default :
            printf("mauvais") ;
        break;
    }

    return 0;
}
0
marven23 Messages postés 71 Date d'inscription samedi 11 juillet 2009 Statut Membre Dernière intervention 20 août 2013 2
7 nov. 2009 à 14:04
Et pourquoi compliquer la vie????!!! case c'est pour des valeurs discrètes

mais si tu insiste sur case,
voici une autre possibilité plus simple avec deux cases imbriqués:

switch (valeur){

case 1:
printf(" bien");
break;

default : switch(valeur) {
case 0:printf("moyen");
break;
default : printf("mauvais") ;
break;
}
break;
}

@+
0