입력 코드
#include <stdio.h>
main() {
int A, B;
scanf("%d %d", &A, &B);
int rA = 0, rB = 0;
while (A != 0) {
rA *= 10;
rA += A % 10;
A /= 10;
}
while (B != 0) {
rB *= 10;
rB += B % 10;
B /= 10;
}
if (rA > rB)
printf("%d\n", rA);
else
printf("%d\n", rB);
}
코드 설명
#반복문 #조건문 #배열 #정수거꾸로출력하기
#include <stdio.h>
main() {
int A, B;
scanf("%d %d", &A, &B);
int Anum[3], Bnum[3];
int i, j, ans;
for (i = 0; i < 3; i++) {
Anum[i] = A % 10;
A = A / 10;
}
for (j = 0; j < 3; j++) {
Bnum[j] = B % 10;
B = B / 10;
}
for (i = 0; i < 3; i++) {
if (Anum[i] > Bnum[i])
ans = Anum;
}
printf("%d\n", ans);
}
처음에는 A, B 두 수를 입력받고 거꾸로 읽는 수를 배열을 선언해서 몫과 나머지를 이용해서 만들려고 했다. 그런데 그렇게 하니까 마지막에 두 수의 크기를 비교하는 부분에서 너무 복잡해질 것 같았다.
#include <stdio.h>
main() {
int A, B;
scanf("%d %d", &A, &B);
int rA = 0, rB = 0;
while (A != 0) {
rA *= 10;
rA += A % 10;
A /= 10;
}
while (B != 0) {
rB *= 10;
rB += B % 10;
B /= 10;
}
if (rA > rB)
printf("%d\n", rA);
else
printf("%d\n", rB);
}
그래서 주어진 수를 뒤집는 방법을 이용해서 직접 비교했다.
↓↓↓ 참고한 사이트
문제 출처
'C' 카테고리의 다른 글
#34. [백준_C언어] 1712 : 손익분기점 (0) | 2021.01.16 |
---|---|
#33. [백준_C언어] 5622 : 다이얼 (0) | 2021.01.16 |
#31. [백준_C언어] 1152 : 단어의 개수 (0) | 2021.01.16 |
#30. [백준_C언어] 1157 : 단어 공부 (0) | 2021.01.14 |
#29. [백준_C언어] 10809 : 알파벳 찾기 (0) | 2021.01.14 |