您的位置:首页 > 编程语言 > C语言/C++

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

2017-05-11 15:18 288 查看


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

时间限制

100 ms

内存限制

65536 kB

代码长度限制

8000 B

判题程序

Standard

作者

CHEN, Yue

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

输入格式:

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

输出格式:

输出A+B的D进制数。
输入样例:
123 456 8

输出样例:
1103


//A+B 使用int保存也不会溢出
//只考虑进制转换即可
#include <cstdio>
int trans[50]={0};
int size=0;

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 r;
while(c!=0){
int temp;
temp=c/d;
trans[size++]=c-temp*d;
c=temp;
}
for(int i=size-1;i>=0;i--){
printf("%d",trans[i]);
}
return 0;
}
注意处理A、B相加结果等于0的情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ 考研机试 PAT