【来源】
【分析】
此题考察进制转换的相关知识。
【代码】
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
int d;
cin >> d;
int c = a+b;
if(c == 0){
cout << 0 << endl;
}
else{
vector<int> digits;
while(c){
int digit = c % d;
c /= d;
digits.push_back(digit);
}
for(int i = digits.size()-1; i >=0; --i){
cout << digits[i];
}
cout << endl;
}
return 0;
}
【点评】
此题为PAT2014.3.1春季考试第二题,属于简单题。
【附C语言版】
#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\n");
}
else{
int digits[30];
int i = 0;
while (c){
int digit = c % d;
c /= d;
digits[i++] = digit;
}
while (i--){
printf("%d", digits[i]);
}
printf("\n");
}
return 0;
}