2-1. if 여러 개 

문제설명

아래 코드를 보고 출력 결과를 쓰시오.

 

목표

if가 여러 개 있을 때와 else if의 차이를 이해한다.

 

요구사항

  • if 문은 각각 독립적으로 실행된다.
  • 출력 결과를 순서대로 쓰시오.

코드

#include <stdio.h>

int main(void)
{
    int num = 5;

    if (num > 3)
        printf("A\n");

    if (num > 4)
        printf("B\n");

    if (num > 5)
        printf("C\n");

    return 0;
}
 

 

출력결과

 

2-2. else if 

문제설명

아래 코드를 보고 출력 결과를 쓰시오.

 

목표

else if는 위에서부터 검사함을 이해한다.

 

요구사항

  • 첫 번째로 참이 되는 블록만 실행된다.

코드

#include <stdio.h>

int main(void)
{
    int num = 10;

    if (num > 5)
        printf("A\n");

    else if (num > 8)
        printf("B\n");

    else
        printf("C\n");

    return 0;
}
 

 

출력결과

 

 

2-3. 중첩 if

문제설명

아래 코드를 보고 출력 결과를 쓰시오.

 

목표

중첩 if 구조를 이해한다.

 

요구사항

  • 바깥 if가 참일 때만 안쪽 if 실행

코드

#include <stdio.h>

int main(void)
{
    int a = 1;
    int b = 0;

    if (a == 1)
    {
        printf("A\n");

        if (b == 1)
            printf("B\n");
    }

    printf("C\n");

    return 0;
}
 
 

출력결과

 

 

2-4. break 없는 switch 문제 (fall-through)

문제설명

아래 코드를 보고 출력 결과를 쓰시오.

 

목표

break가 없으면 다음 case가 실행됨을 이해한다.

 

요구사항

  • break가 없으면 계속 실행됨

코드

#include <stdio.h>

int main(void)
{
    int num = 2;

    switch (num)
    {
    case 1:
        printf("ONE\n");

    case 2:
        printf("TWO\n");

    case 3:
        printf("THREE\n");
    }

    return 0;
}
 
 

출력결과

더보기
TWO
THREE
 

 

2-5. 중첩 + else 

문제설명

아래 코드를 보고 출력 결과를 쓰시오.

 

목표

else가 어느 if에 연결되는지 이해한다.

 

코드

#include <stdio.h>

int main(void)
{
    int a = 1;
    int b = 0;

    if (a == 1)
        if (b == 1)
            printf("A\n");
        else
            printf("B\n");

    return 0;
}
 
 

출력결과

 

+ Recent posts