Instruction switch case en langage C

CCBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

En C, l'instruction switch case est utilisée pour contrôler le flux d'exécution d'un programme lorsqu'il existe plusieurs alternatives disponibles. C'est l'une des instructions de décision en C. L'instruction switch case évalue une expression et la compare avec plusieurs valeurs pour exécuter un bloc de code correspondant.

Dans ce laboratoire, vous allez apprendre à utiliser l'instruction switch case en C avec des exemples.

Syntaxe de base du switch case

#include <stdio.h>

int main() {
  int num = 2;
  switch(num) {
    case 1:
      printf("Le nombre est 1");
      break;
    case 2:
      printf("Le nombre est 2");
      break;
    case 3:
      printf("Le nombre est 3");
      break;
    default:
      printf("Le nombre n'est pas 1, 2 ou 3");
  }
  return 0;
}

Ce programme déclare un entier num avec une valeur de 2 et utilise l'instruction switch case pour vérifier si sa valeur correspond à l'une des étiquettes de cas. Étant donné que la valeur de num est 2, la sortie de ce code sera Le nombre est 2.

Sans instruction break

#include <stdio.h>

int main() {
  int num = 2;
  switch(num) {
    case 1:
      printf("Le nombre est 1\n");
    case 2:
      printf("Le nombre est 2\n");
    case 3:
      printf("Le nombre est 3\n");
    default:
      printf("Le nombre n'est pas 1, 2 ou 3\n");
  }
  return 0;
}

Ce programme déclare un entier num avec une valeur de 2 et utilise l'instruction switch case sans utiliser l'instruction break. Étant donné qu'il n'y a pas d'instruction break, toutes les instructions suivantes seront exécutées jusqu'à la prochaine instruction break ou à la fin de l'instruction switch case. La sortie de ce programme sera :

Le nombre est 2
Le nombre est 3
Le nombre n'est pas 1, 2 ou 3

Utilisation du type de données char

#include <stdio.h>

int main() {
  char grade = 'B';
  switch(grade) {
    case 'A':
      printf("Excellent");
      break;
    case 'B':
      printf("Bon");
      break;
    case 'C':
      printf("Moyen");
      break;
    default:
      printf("Note invalide");
  }
  return 0;
}

Ce programme déclare une variable de type caractère grade avec une valeur de 'B'. Il utilise l'instruction switch case pour vérifier si la valeur de grade correspond à l'une des étiquettes de cas. La sortie de ce code sera Bon.

switch case imbriqué

#include <stdio.h>

int main() {
  int num1 = 2, num2 = 3;

  switch(num1) {
    case 1:
      switch(num2) {
        case 1:
          printf("Le nombre est 1");
          break;
        case 2:
          printf("Le nombre est 2");
          break;
        default:
          printf("Le nombre n'est pas 1 ou 2");
          break;
      }
      break;
    case 2:
      switch(num2) {
        case 3:
          printf("Le nombre est 3");
          break;
        case 4:
          printf("Le nombre est 4");
          break;
        default:
          printf("Le nombre n'est pas 3 ou 4");
          break;
      }
      break;
    default:
      printf("Entrée invalide");
  }
  return 0;
}

Ce programme déclare deux variables entières num1 et num2 avec respectivement les valeurs 2 et 3. Ensuite, il utilise des instructions switch case imbriquées pour vérifier si les valeurs de num1 et num2 correspondent à l'une des étiquettes de cas. La sortie de ce code sera Le nombre est 3.

Récapitulatif

Dans ce laboratoire, vous avez appris à utiliser l'instruction switch case en C avec des exemples. Vous avez appris comment utiliser l'instruction switch case avec différents types de données, comment l'utiliser sans l'instruction break et comment imbriquer des instructions switch case.