Rechercher : dans
Par :

Switch (variable) case en C

Dernière réponse le 7 nov 2009 à 14:04:02 wachbaik, le 7 nov 2009 à 13:07:35 
 Signaler ce message aux modérateurs

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

Configuration: Linux
Firefox 3.0.15

Meilleures réponses pour « switch (variable) case en C » dans :
Les variables en C++ Voir Les variables en C++ 1. Les différents types de variables 1.1 bool 1.2 char 1.3 unsigned short int 1.4 short int 1.5 unsigned long int 1.6 long int 1.7 int (16 bits) 1.8 int (32 bits) 1.9 unsigned int (16 bits) 1.10 unsigned int (32...
[Shell] Tester une variable numérique VoirTester une variable numérique    Préambule Dans un environnement "shell", les variables sont, par défaut, de type "chaîne de caractères". De ce fait il n'est pas possible de déclarer une variable de type "entier" (enfin, ceci n'est pas tout à...
Modifier une variable en lecture seule VoirSolution 1 Une variable déclarée en lecture seule ne peut pas être modifiée dans le processus en cours. Toutefois, si la variable est exportée dans un shell fils, elle pourra être modifiée.#!/bin/bash if [ "$PROC_PID" != "$PPID" ]; then ...
Langage C - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage C sont typées, c'est-à-dire que les données contenues dans...
Langage C++ - Les variables VoirLe concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage C++ sont typées, c'est-à-dire que les données contenues dans...
Les classes en langage C++ VoirLa notion d'objet Le langage C est un langage procédural, c'est-à-dire que c'est un langage permettant de définir des données grâce à des variables, et des traitements grâce aux fonctions. L'apport principal du langage C++ par rapport au...

1

marven23, le 7 nov 2009 à 13:13:39

Salut,

http://www.commentcamarche.net/contents/c/ccond.php3


@+ C'est à force de forger que l'on devient forgeron!

Répondre à marven23

2

wachbaik, le 7 nov 2009 à 13:26:06

Conclusion je ne peux faire ça qu'avec if / else if / else ???

Répondre à wachbaik

3

marven23, le 7 nov 2009 à 13:33:26

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

@+ C'est à force de forger que l'on devient forgeron!

Répondre à marven23

4

skuti, le 7 nov 2009 à 13:49:21

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;
}

Répondre à skuti

5

 marven23, le 7 nov 2009 à 14:04:02

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;
}

@+ C'est à force de forger que l'on devient forgeron!

Répondre à marven23
Collection CommentÇaMarche.net