Latest web development tutorials

istruzione switch C

analizzando C analizzando C

Test case di un'istruzioneswitch consente una variabile pari al valore multiplo.Ogni valore è chiamato un caso, e la variabile sarà testata ciascuncaso interruttore da controllare.

grammatica

C lingua istruzioneswitch sintassi:

switch(expression){
    case constant-expression  :
       statement(s);
       break; /* 可选的 */
    case constant-expression  :
       statement(s);
       break; /* 可选的 */
  
    /* 您可以有任意数量的 case 语句 */
    default : /* 可选的 */
       statement(s);
}

istruzioneswitch deve seguire queste regole:

  • interruttore espressionedichiarazione deve essere un tipo intero o enumerazione, o un tipo di classe, quale classe ha una sola funzione di conversione per convertirlo in un tipo intero o di enumerazione.
  • In un interruttore si può avere un numero qualsiasi di istruzioni case. Ogni caso è seguito da un valore da confrontare con i due punti.
  • caso diespressione-costante deve avere lo stesso tipo di dati e passare variabili, e deve essere una costante o letterale.
  • Quando la variabile che testato è uguale al caso di costante di tempo, seguita da un'istruzione caso verrà eseguita, finché non incontra un'istruzionebreak.
  • Quando si incontra un'istruzionebreak, l'interruttore interrompe il flusso di controllo passa alla riga successiva dopo l'istruzione switch.
  • Non tutti i casi deve includerepausa.Se l'istruzione case non contiene unapausa,continueremoa controllare il flusso del caso successiva, finché non incontra una rottura.
  • Un'istruzioneswitch può avere un caso predefinito opzionale,appare alla fine del commutatore. caso di default può essere utilizzato in tutti i casi di cui sopra non è vero quando si esegue un'operazione. Larottura nella dichiarazione caso di default non è necessaria.

diagramma di flusso

istruzione switch C

Esempi

#include <stdio.h>
 
int main ()
{
   /* 局部变量定义 */
   char grade = 'B';

   switch(grade)
   {
   case 'A' :
      printf("很棒!\n" );
      break;
   case 'B' :
   case 'C' :
      printf("做得好\n" );
      break;
   case 'D' :
      printf("您通过了\n" );
      break;
   case 'F' :
      printf("最好再试一下\n" );
      break;
   default :
      printf("无效的成绩\n" );
   }
   printf("您的成绩是 %c\n", grade );
 
   return 0;
}

Quando il codice di cui sopra è compilato ed eseguito, produce i seguenti risultati:

做得好
您的成绩是 B

analizzando C analizzando C