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

来源:互联网 发布:java log4j mongodb 编辑:程序博客网 时间:2024/06/05 05:20

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

输入格式:

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

输出格式:

输出A+B的D进制数。

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

#include <iostream>#include <stdio.h>#include <stdlib.h>using namespace std;#define N 99int main(){    int a,b,sum;    int d;    scanf("%d%d%d",&a,&b,&d);    sum=a+b;//sum要放在scanf之后,否则出错    int ar[N]={0};    int num=0;    if(sum==0){//这个容易忘,对特殊条件的判断        printf("%d",sum);        return 0;    }    while(sum!=0){        int n=sum%d;        ar[num++]=n;        sum/=d;    }    for(int i=num-1;i>=0;--i){//i起点是num-1,因为ar[0]也存东西        printf("%d",ar[i]);    }    return 0;}
0 0