PTA basic 1022 D进制的A+B (20 分) c语言实现(gcc)

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

输入格式:

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

输出格式:

输出 A+B 的 D 进制数。

输入样例:

123 456 8
 

输出样例:

1103
 
 
 
解题思路
1. A B的和 对 D 取余数倒序输出结果就是转换进制后的数字
2.测试点3是对A +B=0的测试
 
 1 #include "stdio.h"
 2 #include "string.h"
 3 int main(){
 4     
 5     int a,b,temp,d,i=0,output;
 6     char outputArray[1000];
 7     scanf("%d %d %d",&a,&b,&d);
 8     temp=a+b;
 9     if(!temp){
10         printf("0");    }else{
11             while(temp){
12                 output=temp%d;
13                 temp/=d;
14                 outputArray[i]=(char)(output+'0');
15                 i++;
16             }
17             for(i=i-1;i>=0;i--){
18                 printf("%d",outputArray[i]-'0');
19             }
20         }
21     
22     return 0;
23 }

 

posted @ 2021-04-21 16:57  keiiha  阅读(59)  评论(0编辑  收藏  举报