정보처리산업기사 실기 시험 기출 문제 - 진법 변환과 정수 연산
추천 자료: ASP.NET Core 인증 및 권한 부여
문제
다음 C 프로그램이 실행되었을 때의 동작을 설명하고, 출력 결과를 예측하시오.
소스 코드 파일명: number_systems_and_arithmetic.c
#include <stdio.h>
main()
{
int j = 024, k = 24, L = 0x24, hap;
hap = j + k + L;
printf("%d, %d, %d, %d\n", j, k, L, hap);
}
입력 예시
이 프로그램은 입력을 받지 않습니다.
출력 예시
20, 24, 36, 80
해설
이 프로그램은 다양한 진법으로 표현된 정수를 선언하고, 이들의 합을 계산하여 출력합니다.
int j = 024;
는 8진법으로 표현된 정수입니다. 10진수로는 20입니다.int k = 24;
는 10진법으로 표현된 정수입니다. 그대로 24입니다.int L = 0x24;
는 16진법으로 표현된 정수입니다. 10진수로는 36입니다.hap = j + k + L;
계산 결과는20 + 24 + 36 = 80
이 됩니다.printf("%d, %d, %d, %d\n", j, k, L, hap);
는 각 변수의 값을 10진수로 변환하여 출력합니다. 결과는20, 24, 36, 80
입니다.
진법 변환 과정 설명:
- 8진법:
024
를 10진수로 변환하기 위해,2*8^1 + 4*8^0 = 16 + 4 = 20
. - 16진법:
0x24
를 10진수로 변환하기 위해,2*16^1 + 4*16^0 = 32 + 4 = 36
.
이 예제는 다양한 진법에서 숫자를 해석하고, 이를 통합하여 연산을 수행하는 방법을 보여줍니다.
추천 자료: .NET Blazor에 대해 알아보시겠어요? .NET Blazor 알아보기를 확인해보세요!