C언어 기초 퀴즈

2024. 5. 24. 01:54코딩과 프로그래밍/C언어

728x90

C언어 기초교육 5장까지 배웠던 내용을 복습할 겸 퀴즈를 내볼테니 맞춰보자.

정답은 글의 맨 아래에 있다.

 

1. 다음 중 정수형 변수를 선언하고 초기화하는 올바른 방법은 무엇입니까?

  1. a) int num = "42";
  2. b) int num = 42;
  3. c) float num = 42;
  4. d) char num = 42;

 

2. 다음 중 실수형 데이터를 저장할 수 있는 변수 타입은 무엇입니까?

a) int

b) char

c) float

d) double

 

 

3. 다음 코드의 출력 결과는?

#include <stdio.h>
int main() {
    int num = 42;
    printf("%d\n", num);
    return 0;
}

a) 42

b) %d

c) num

d) Error

 

 

4. 다음 코드의 출력 결과는?

#include <stdio.h>
int main() {
    int num = 5;
    if (num > 3) {
        printf("num은 3보다 큽니다.\n");
    } else {
        printf("num은 3보다 작거나 같습니다.\n");
    }
    return 0;
}

a) num은 3보다 큽니다.

b) num은 3보다 작거나 같습니다.

c) num은 5입니다.

d) Error

 

5. switch 문에 대해 설명한 것 중 틀린 것은 무엇입니까?

a) switch 문은 변수의 값을 평가하고, 일치하는 case 블록을 실행합니다.

b) break 문을 사용하지 않으면 다음 case 블록이 연속적으로 실행됩니다.

c) default 블록은 필수입니다.

d) switch 문은 반복문을 종료할 수 없습니다.

 

6. 다음 코드의 출력 결과는?

#include <stdio.h>
int main() {
    int num = 3;
    switch (num) {
        case 1:
            printf("num은 1입니다.\n");
            break;
        case 2:
            printf("num은 2입니다.\n");
            break;
        case 3:
            printf("num은 3입니다.\n");
            break;
        default:
            printf("num은 1, 2, 3 중 하나가 아닙니다.\n");
    }
    return 0;
}

a) num은 1입니다.

b) num은 2입니다.

c) num은 3입니다.

d) num은 1, 2, 3 중 하나가 아닙니다.

 

[정답]

1번 문제 - B

해설)

int num = 42;

위 코드를 해석하면 정수형(int) 변수인 num(변수명)을 선언.

이때 num = 42;란 뜻은 num에게 42란 값을 할당(초기화) 한다는 뜻이다.

 

2번 문제 - C

해설)

int는 정수형 데이터를 저장할 수 있는 변수 타입이며 char는 문자형

float는 실수형, double은 배정밀도 실수형이다.

 

3번 문제 - A

해설) 3번 문제의 코드를 해석하면 정수형 변수인 num을 선언.

num에게 42라는 값을 할당(초기화) 이후 printf 문으로 num의 값인 42를 출력하는 코드란 걸 알 수 있다.

 

4번 문제 - A

해설) 해당 코드를 해석하면 정수형 변수인 num을 선언. 이후 num에 5이라는 값을 할당(초기화).

이후 if 문에선 num > 3 이라 되있는데. 여기서 >은 C언어에서 사용되는 비교 연산자로 좌우에 있는 두 값을 비교하여 관계를 나타내는데 사용된다고 전에 이미 설명했다. 특히 > 연산자는 Greater than이라고 하여 왼쪽 피연산자가 오른쪽 피연산자보다 큰지를 비교한다. 즉, 크면 참. 틀리면 거짓인데. num은 3보다 크므로 참이기 때문에 if 문에 작성된 printf문인 'num은 3보다 큽니다'를 실행한다.

 

5번 문제 - C

default 블록은 필수가 아니다.

 

6번 문제 - C

해당 문제의 코드를 해석하면 정수형 변수인 num을 선언

num에 3이라는 값을 할당(초기화) 이후 switch 문을 작성하고 case를 3까지 만들었는데.

num의 값은 3이기 때문에 case 3에 적힌 printf문이 출력된다.

 

 

728x90

'코딩과 프로그래밍 > C언어' 카테고리의 다른 글

C언어 기초교육(5/10)  (0) 2024.05.18
C언어 기초교육(4/10)  (0) 2024.05.17
C언어 기초교육(3/10)  (0) 2024.05.16
C언어 기초교육(2/10)  (0) 2024.05.16
C언어 기초교육(1/10)  (0) 2024.05.15