문제
다음 C언어 코드의 출력 결과는?
Cint a = 5, b = 3; printf("%d", a & b);
① 1 ② 3 ③ 5 ④ 8
정답
1번
해설
정답: 1. 5는 이진수 0101, 3은 0011이며 비트 AND 연산 결과는 0001, 즉 1이다.
오답 풀이
- 1번: 5 & 3의 결과로 정확한 값이다.
- 2번: 변수 b의 원래 값이다.
- 3번: 변수 a의 원래 값이다.
- 4번: 덧셈에 가까운 값이다.
보충 개념 비트 AND 연산은 두 비트가 모두 1일 때만 1을 결과로 만든다.