输入两个非负 10 进制整数 A 和 B (≤2 30 −1),输出 A+B 的 D (1<D≤10)进制数。
输入格式: 输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式: 输出 A+B 的 D 进制数。
输入样例: 123 456 8 输出样例: 1103
源码地址:https://github.com/MrHaddis/PAT1022
#include <stdio.h> #include <math.h> //MrHaddis //https://github.com/MrHaddis/PAT1022 int main() { //数A 数B a+b的和 long a, b, sum; //进制 int d; //存放余数 int sumArray[100]; //定义下标 int count = 0; //获取输入 scanf("%ld %ld %d", &a, &b, &d); //求和 sum = a + b; //为0的时候 直接输入0 if (sum == 0) { printf("0"); return 0; } //循环求余数并存储 while (sum != 0) { sumArray[count++] = sum % d; //每求一次就除以10 sum = sum / d; } //倒序输出结果 for (int i = count - 1; i >= 0; i--) { printf("%d", sumArray[i]); } return 0; }