정보처리기능사 실기 시험 기출 문제 - 조건 연산자와 비트 연산
추천 자료: ASP.NET Core 인증 및 권한 부여
문제
다음 C 프로그램이 실행되었을 때의 동작을 설명하고, 출력 결과를 예측하시오.
소스 코드 파일명: conditional_bitwise_operations.c
#include <stdio.h>
main() {
int num1 = 16, num2 = 80;
printf("%d", num1 > num2 ? num1 & num2 : num1 ^ num2);
}
입력 예시
이 프로그램은 입력을 받지 않습니다.
출력 예시
64
해설
이 프로그램은 두 정수 num1
과 num2
를 비교한 후, 조건에 따라 비트 AND 연산 또는 비트 XOR 연산의 결과를 출력합니다.
int num1 = 16, num2 = 80;
는 두 정수 변수num1
과num2
를 선언하고 각각 16과 80으로 초기화합니다.printf("%d", num1 > num2 ? num1 & num2 : num1 ^ num2);
는num1
이num2
보다 큰지 비교합니다. 이 경우,num1
은num2
보다 작으므로 조건은 거짓이 되어 비트 XOR 연산num1 ^ num2
를 수행합니다.- 비트 XOR 연산은 두 비트가 다를 경우 1을, 같을 경우 0을 반환합니다. 따라서, 16 (
10000
이진수)과 80 (1010000
이진수)의 비트 XOR 연산 결과는 64 (1000000
이진수)가 됩니다.
- 비트 XOR 연산은 두 비트가 다를 경우 1을, 같을 경우 0을 반환합니다. 따라서, 16 (
- 계산된 결과인 64가 출력됩니다.
이 프로그램은 조건 연산자와 비트 연산자를 사용하여 두 정수의 비교 결과에 따라 다른 비트 연산을 수행하는 방법을 보여줍니다.
추천 자료: .NET Blazor에 대해 알아보시겠어요? .NET Blazor 알아보기를 확인해보세요!