기출문제/정보처리기사

2022년 2회 정보처리기사 기출문제 62번

엉클지니 2025. 2. 26. 21:51

62. 다음 C언어 프로그램이 실행되었을 때, 실행 결과는?

① 0    

③ 5   14

 

C 프로그램 실행 결과 분석

📌 주어진 코드

#include <stdio.h>

int main(int argc, char *argv[]) {
    int a = 5, b = 3, c = 12;
    int t1, t2, t3;

    t1 = a && b;  // 논리 AND
    t2 = a || b;  // 논리 OR
    t3 = !c;      // 논리 NOT

    printf("%d", t1 + t2 + t3);
    return 0;
}

1. 각 연산자의 동작 원리

(1) t1 = a && b; (논리 AND &&)

  • a = 5 (참, 0이 아님)
  • b = 3 (참, 0이 아님)
  • a && b → 둘 다 참이므로 결과는 1
    t1 = 1;
    

(2) t2 = a || b; (논리 OR ||)

  • a = 5 (참)
  • b = 3 (참)
  • a || b → 둘 중 하나라도 참이면 결과는 1
    t2 = 1;
    

(3) t3 = !c; (논리 NOT !)

  • c = 12 (참, 0이 아님)
  • !c → 참(1)을 반대로 뒤집으면 0
    t3 = 0;
    

2. 최종 값 계산

t1 + t2 + t3 = 1 + 1 + 0 = 2

👉 출력 값은 2!


3. 정답 확인

정답: ② 2


4. 오답 분석

선택지 값 설명

① 0 t1 = 1, t2 = 1이므로 0이 될 수 없음
② 2 1 + 1 + 0 = 2
③ 5 t1, t2, t3 값과 무관
④ 14 c 값이 12이지만 연산에 포함되지 않음

💡 결론

📌 논리 연산자 &&, ||, !의 동작을 이해하면 쉽게 풀 수 있는 문제!
🔹 논리 AND (&&): 둘 다 참 → 1
🔹 논리 OR (||): 하나라도 참 → 1
🔹 논리 NOT (!): 참이면 0, 거짓이면 1

👉 출력 결과: 2 (✅ 정답: ②)

반응형