22-1양의 정수의 자릿수를 거꾸로 뒤집어 출력하는 C 프로그램이다(예… | 2022년 정보처리기사실기 1회차 기출문제 상세 페이지
15
22-1
양의 정수의 자릿수를 거꾸로 뒤집어 출력하는 C 프로그램이다(예: 5821 → 1285). 빈칸 ①~③에 알맞은 연산자를 적으시오. 단, 일의 자리가 0인 정수는 고려하지 않는다.
#include <stdio.h>
int main(void) {
int n = 5821;
int rev = 0;
while (n ( ① ) 0) {
rev = rev * 10 + n ( ② ) 10;
n = n ( ③ ) 10;
}
printf("%d", rev);
return 0;
}해설
① > (또는 !=)
② %
③ /
[해설]
반복마다 n % 10으로 끝자리를 떼어 rev 뒤에 붙이고, n / 10으로 끝자리를 버린다. n이 0이 되면 더 뗄 자리가 없으므로 조건은 n > 0(또는 n != 0)이다.
- 1회: rev=1, n=582
- 2회: rev=12, n=58
- 3회: rev=128, n=5
- 4회: rev=1285, n=0 → 종료
일의 자리가 0이면 뒤집은 수의 맨 앞 0이 사라지므로 문제에서 제외한 것이다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.