다음 표준 C언어로 작성한 프로그램의 연산 결과는? | [전자기능사 필기] 15년 4회차 기출문제 상세 페이지
1[전자기능사 필기] 15년 4회차
다음 표준 C언어로 작성한 프로그램의 연산 결과는?
1
6
2
8
3
24
4
14
해설
출력되는 연산 결과는 6 이다.
C 언어에서 ^ 는 거듭제곱이 아니라 비트 단위 배타적 논리합(XOR) 연산자다. 따라서 printf 로 출력되는 값은 10 과 12 의 비트 XOR 이다.
10 과 12 를 2진수로 펴면 , 이고, 자리마다 서로 다르면 1·같으면 0 을 취하면 이다.
- 같은 두 수에 비트 논리곱(&)을 적용하면 이 나오므로, 8 은 연산자를 & 로 잘못 본 결과다.
- 비트 논리합(|)을 적용하면 가 되므로, 14 역시 연산자를 혼동한 값이다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.
