PAT 乙级练习 1022 D进制的A+B
PAT 乙级练习 题解合集
题目
输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103
代码
#include <stdio.h>
int main() {
int a, b, c, d;
scanf("%d %d %d", &a, &b, &d);
c = a + b;
if (c == 0) { // 特判
printf("0");
return 0;
}
int stack[100] = {0};
int i = 0;
while (c) {
stack[i++] = c % d;
c /= d;
}
while (i > 0)
printf("%d",stack[--i]);
return 0;
}