1022. D进制的A+B
题目截图:
思路:
进制转换。详解请看另一篇博客。
代码:
1 /* 2 1022. D进制的A+B 3 */ 4 5 #include <stdio.h> 6 #include <string.h> 7 #include <math.h> 8 #include <stdlib.h> 9 #include <time.h> 10 11 int main() { 12 int a, b, d, i; 13 int jin[32]; 14 scanf("%d %d %d", &a, &b, &d); 15 int sum = a+b; // 求和 16 if(sum == 0) { // 特解 17 printf("0"); 18 return 0; 19 } 20 int cnt = 0; // 进制位数 21 while(sum != 0) { // 求d进制,并逆序存储到jin 22 jin[cnt++] = sum%d; 23 sum /= d; 24 } 25 for(i=cnt-1; i>=0; --i) { // 逆序输出即为所求 26 printf("%d", jin[i]); 27 } 28 29 return 0; 30 }