다음 C 프로그램의 출력값은?
unsigned int x = 0x2D;
unsigned int y = ((x << 1) ^ (x >> 2)) & 0x3F;
printf("%u", y);정답 3번
x는 45이다. `x << 1`은 90, `x >> 2`는 11이고 두 값의 XOR은 81이다. 마지막으로 하위 6비트만 남기면 `81 & 63 = 17`이므로 17을 출력한다.
콘텐츠 정보
- 자료 유형
- 정처LAB 자체 제작
- 검수 상태
- 내용 검수 완료
- 해설 작성·검수
- 정처LAB 편집 기준
- 최종 검수
- 2026-08-22