1022. D进制的A+B (20)

来源:互联网 发布:电子发票制作软件 编辑:程序博客网 时间:2024/06/06 20:46

题目链接

题目:

输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数。

输入格式:

输入在一行中依次给出3个整数A、B和D。

输出格式:

输出A+B的D进制数。

输入样例:
123 456 8
输出样例:
1103

题解:

简单输入输出题。进制转换。

一开始有一组数据错误,还以为是数据类型的原因,把int改为long long之后还是错误。然后才发现原来是和为0这个特殊情况。

代码:

#include <cstdio>int main(){int a, b, sum;int d, j = 0;int ans[100];scanf("%d%d%d", &a, &b, &d);sum = a + b;if(sum == 0){printf("0");return 0;}while(sum){ans[j++] = sum % d;sum /= d;}for(int i = j - 1; i >=0; i--)printf("%d", ans[i]);return 0;}


原创粉丝点击