C 언어의 Switch Case 문

CBeginner
지금 연습하기

소개

C 언어에서 switch case 문은 여러 가지 대안이 있을 때 프로그램의 실행 흐름을 제어하는 데 사용됩니다. C 언어의 의사 결정 문 중 하나입니다. switch case 문은 표현식을 평가하고 여러 값과 일치시켜 해당 코드 블록을 실행합니다.

이 랩에서는 C 언어에서 switch case 문을 예제와 함께 사용하는 방법을 배웁니다.

기본 Switch Case 구문

#include <stdio.h>

int main() {
  int num = 2;
  switch(num) {
    case 1:
      printf("Number is 1");
      break;
    case 2:
      printf("Number is 2");
      break;
    case 3:
      printf("Number is 3");
      break;
    default:
      printf("Number is not 1, 2, or 3");
  }
  return 0;
}

이 프로그램은 정수형 변수 num을 선언하고 값 2 를 할당합니다. 그리고 switch case 문을 사용하여 해당 값이 어떤 case 레이블과 일치하는지 확인합니다. num의 값이 2 이므로, 이 코드의 출력은 "Number is 2"가 됩니다.

Break 문 미사용

#include <stdio.h>

int main() {
  int num = 2;
  switch(num) {
    case 1:
      printf("Number is 1\n");
    case 2:
      printf("Number is 2\n");
    case 3:
      printf("Number is 3\n");
    default:
      printf("Number is not 1, 2, or 3\n");
  }
  return 0;
}

이 프로그램은 정수형 변수 num을 선언하고 값 2 를 할당하며, break 문을 사용하지 않고 switch case 문을 사용합니다. break 문이 없으므로, 다음 break 문이나 switch case 문의 끝까지 모든 후속 문이 실행됩니다. 이 프로그램의 출력은 다음과 같습니다.

Number is 2
Number is 3
Number is not 1, 2, or 3

Char 데이터 타입 사용

#include <stdio.h>

int main() {
  char grade = 'B';
  switch(grade) {
    case 'A':
      printf("Excellent");
      break;
    case 'B':
      printf("Good");
      break;
    case 'C':
      printf("Average");
      break;
    default:
      printf("Invalid grade");
  }
  return 0;
}

이 프로그램은 문자형 변수 grade를 선언하고 값 'B'를 할당합니다. switch case 문을 사용하여 grade의 값이 어떤 case 레이블과 일치하는지 확인합니다. 이 코드의 출력은 "Good"이 됩니다.

중첩 Switch Case

#include <stdio.h>

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

  switch(num1) {
    case 1:
      switch(num2) {
        case 1:
          printf("Number is 1");
          break;
        case 2:
          printf("Number is 2");
          break;
        default:
          printf("Number is not 1 or 2");
          break;
      }
      break;
    case 2:
      switch(num2) {
        case 3:
          printf("Number is 3");
          break;
        case 4:
          printf("Number is 4");
          break;
        default:
          printf("Number is not 3 or 4");
          break;
      }
      break;
    default:
      printf("Invalid input");
  }
  return 0;
}

이 프로그램은 두 개의 정수형 변수 num1num2를 선언하고 각각 2 와 3 의 값을 할당합니다. 그런 다음 중첩된 switch case 문을 사용하여 num1num2의 값이 어떤 case 레이블과 일치하는지 확인합니다. 이 코드의 출력은 "Number is 3"이 됩니다.

요약

이 랩에서는 C 에서 switch case 문을 예제와 함께 사용하는 방법을 배웠습니다. 다양한 데이터 타입으로 switch case 문을 사용하는 방법, break 문 없이 사용하는 방법, 그리고 switch case 문을 중첩하는 방법을 배웠습니다.