PAT (Basic Level) Practise (中文)- 1022. D进制的A+B (20)

PAT (Basic Level) Practise (中文)-  1022. D进制的A+B (20)  http://www.patest.cn/contests/pat-b-practise/1022

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

输入格式:

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

输出格式:

输出A+B的D进制数。

输入样例:

123 456 8

输出样例:

1103


 1 #include<stdio.h>
 2 
 3 int main()
 4 {
 5     //123 456 8         1103 
 6     long a=0,b=0;
 7     int d=0;
 8     scanf("%ld%ld%d",&a,&b,&d);    
 9     a+=b;
10     
11     if(!a) { printf("0");return 0; }
12     int iStr=0;
13     char str[50];
14     while(a)
15     {
16         str[iStr]=a%d+'0';
17         a/=d;
18         iStr++;
19     }
20     for(int i=iStr-1;i>=0;i--)
21         printf("%c",str[i]);
22     return 0;
23 }

 

posted on 2015-04-21 19:10  Asin_LZM  阅读(191)  评论(0编辑  收藏  举报