Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C의 switch case 문

<시간/>

스위치 문을 사용하면 변수가 값 목록과 같은지 테스트할 수 있습니다. 각 값을 케이스라고 하며 스위치 켜진 변수는 각 케이스 전환에 대해 확인됩니다. .

C 프로그래밍 언어의 switch 문의 구문은 다음과 같습니다. -

switch(expression) {
   case constant-expression :
      statement(s);
      break; /* optional */
   case constant-expression :
      statement(s);
      break; /* optional */
      /* you can have any number of case statements */
   default : /* Optional */
      statement(s);
}

다음 규칙이 switch 문에 적용됩니다. -

  • 표현 스위치 에서 사용 문은 정수 또는 열거 유형을 가져야 하거나 클래스가 정수 또는 열거 유형에 대한 단일 변환 함수를 갖는 클래스 유형이어야 합니다.

  • 스위치 내에서 원하는 수의 case 문을 가질 수 있습니다. 각 케이스 뒤에는 비교할 값과 콜론이 옵니다.

  • 상수 표현식 케이스는 스위치의 변수와 동일한 데이터 유형이어야 하며 상수 또는 리터럴이어야 합니다.

  • 켜진 변수가 대소문자와 같을 때 해당 대소문자 뒤에 오는 명령문은 중단 이 나올 때까지 실행됩니다. 성명에 도달했습니다.

  • 중단 명령문에 도달하면 스위치가 종료되고 제어 흐름은 스위치 명령문 다음의 다음 라인으로 이동합니다.

  • 모든 케이스에 중단이 포함될 필요는 없습니다. . 중단이 없는 경우 가 나타나면 중단에 도달할 때까지 제어의 흐름이 후속 사례로 넘어갑니다.

  • switch 문에는 선택적 기본값 이 있을 수 있습니다. 스위치의 끝에 나타나야 합니다. 어떤 케이스도 true가 아닐 때 작업을 수행하는 데 기본 케이스를 사용할 수 있습니다. 중단 없음 기본 경우에 필요합니다.

예시 코드

#include <stdio.h>
int main () {
   /* local variable definition */
   char grade = 'B';
   switch(grade) {
      case 'A' :
         printf("Excellent!\n" );
         break;
      case 'B' :
      case 'C' :
         printf("Well done\n" );
         break;
      case 'D' :
         printf("You passed\n" );
         break;
      case 'F' :
         printf("Better try again\n" );
         break;
      default :
         printf("Invalid grade\n" );
   }
   printf("Your grade is %c\n", grade );
   return 0;
}

출력

Well done
Your grade is B