Switch case

Résolu/Fermé
nadhem09
Messages postés
7
Date d'inscription
jeudi 4 mars 2021
Statut
Membre
Dernière intervention
15 mars 2021
- Modifié le 4 mars 2021 à 14:29
nadhem09
Messages postés
7
Date d'inscription
jeudi 4 mars 2021
Statut
Membre
Dernière intervention
15 mars 2021
- 10 mars 2021 à 09:58
Bonjour,
ceci mon code avec une swiitch case autonome .
il ne fonctionne pas . il reste toujours dans la premiere (case 0)

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

void control (void) {

static char step =0;
switch(step) {
case 0 :
printf("im in 0");
step = 1 ;
printf("%d",step);
break ;
case 1 :
printf("%d",step);
printf("im in 1");
step = 2 ;
break ;
case 2 :
printf("im in 2");
break ;
}
}
int main(void) {

control();

}

je besoins de l'aide s'il vous plais

3 réponses

Phil_1857
Messages postés
1400
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
13 août 2022
145
4 mars 2021 à 17:59
Bonjour,

Ben oui,

on appelle control()
step = 0
on switch sur step, donc on va dans case = 0
dedans, on met step à 1
on imprime step
on break, donc on sort du switch
on sort de control()
on termine le programme
0
nadhem09
Messages postés
7
Date d'inscription
jeudi 4 mars 2021
Statut
Membre
Dernière intervention
15 mars 2021

10 mars 2021 à 09:58
oui je fait ca dans le main fonction avec le boucle while(1)
mais ca marche maintenant mercciii
0
Dalfab
Messages postés
665
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
24 juillet 2022
90
4 mars 2021 à 20:31
Et pourquoi, n'essayes tu pas d'appeler
control()
plusieurs fois?
0
Phil_1857
Messages postés
1400
Date d'inscription
lundi 23 mars 2020
Statut
Membre
Dernière intervention
13 août 2022
145
5 mars 2021 à 10:43
Avec les balises de code:

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

void control (void) {

    static char step =0;
    switch(step) {
        case 0 :
            printf("im in 0");
            step = 1 ;
            printf("%d",step);
            break ;
        case 1 :
            printf("%d",step);
            printf("im in 1");
            step = 2 ;
            break ;
        case 2 :
            printf("im in 2");
            break ;
    }
}

int main(void) {

    control();
    return(0);
}
0