본문 바로가기
C

[C] 조건문 | if문 & switch문

by Lizzie Oh 2022. 10. 21.

if문 

💡 조건이 참일 때 실행할 구문이 한 문장일 때에 한해 중괄호 { } 는 생략할 수 있다

if(조건) 
{
    조건이 참일 때 실행할 구문(들) 
}
if(조건) 
{
	조건이 참일 때 수행할 구문(들)
}
else
{
	조건이 거짓일 때 수행할 구문(들)
}
if(조건1) 
{
	조건1이 참일 때 수행할 구문(들)
}
else if(조건2)
{
	조건 1이 거짓이면서 조건2가 참일 때 수행할 구문(들)
}
else
{
	조건 1과 2가 모두 거짓일 경우 수행할 구문(들
}

 

 

switch문

n과 case 의 수 모두 정수여야 하며, case문은 필요한 만큼 추가할 수 있다. 

if ~ else if 문 처럼 조건들을 선형적으로 비교해나가는 게 아니라, n으로 받은 정수와 일치하는 case로 바로 이동하여 조건을 수행하고 break으로 switch문을 빠져나오게 된다! 

switch(n)
{
    case 1: 
    	n==1이면 수행할 구문(들)
        break;
    case 2: 
    	n==2이면 수행할 구문(들)
        break;
    case 3: 
    	n==3이면 수행할 구문(들)
        break;
    default:
    	어떤 케이스와도 일치하지 않을 때 실행할 구문(들)
        break;
}

만약 break문이 없다면, 일치하는 case 이후의 남은 모든 case 문과 default 까지 모두 수행하게 된다. 이를 이용하여 아래와 같이 월을 입력했을 때 계절을 알려주는 프로그램을 만들 수도 있다!

#include <stdio.h>
int main(void)
{
    int month;
    printf("월을 정수형으로 입력하세요 : ");
    scanf("%d", &month);

    switch(month)
    {
        case 12:
        case 1:
        case 2:
            printf("겨울!추워!\n");
            break;
        case 3:
        case 4:
        case 5:
            printf("봄!황사 싫어!\n");
            break;
        case 6:
        case 7:
        case 8:
            printf("여름!더워!\n");
            break;
        case 9:
        case 10:
        case 11:
            printf("가을!좋아!\n");
            break;
        default:
            printf("월을 제대로 입력해주세요 ㅠ\n");
            break;
    }
    return 0;
}

실행 결과 !


Reference

1. C Programming : A Modern Approach, 2/E  K. N. King | W. W. Norton & Company

2. 나혼자 C언어 이창현  | 디지털북스 | 

반응형

댓글