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 }