기출문제/정보처리기사

2021년 2회 정보처리기사 기출문제 63번

엉클지니 2025. 3. 23. 01:10

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

3        4

 7         10

 

이 문제는 비트 연산을 사용하는 C언어 프로그램에 관한 문제입니다. 주어진 코드에서 어떤 비트 연산이 사용되는지, 그리고 그 결과가 무엇인지 파악하는 것이 핵심입니다.

코드 분석

#include <stdio.h>

int main(int argc, char *argv[]) {
    int a = 4;
    int b = 7;
    int c = a | b;
    printf("%d", c);
    return 0;
}
  1. 변수 선언 및 초기화:
    • a = 4
    • b = 7
  2. 비트 연산 (|):
    • 이 코드에서 사용된 |는 비트 OR 연산입니다.
    • a | b는 a와 b의 각 비트를 비교하여, 둘 중 하나라도 1이면 결과 비트는 1이 됩니다.
  3. a = 4와 b = 7의 이진 표현:
    • a = 4의 이진수 표현: 0100
    • b = 7의 이진수 표현: 0111
  4. 비트 OR 연산 결과:
    • a | b의 연산을 비트별로 수행하면:
      0100  (a = 4)
      0111  (b = 7)
      ----
      0111  (결과 = 7)
      
    • 결과는 7입니다.

결론

따라서, a | b 연산의 결과는 7입니다. 프로그램이 출력하는 값은 7입니다.

정답은 ❸ 7입니다! 🎉