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

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

时间限制
100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue

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

输入格式:

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

输出格式:

输出A+B的D进制数。

输入样例:
123 456 8
输出样例:
1103
 
  
#include <stdio.h>
int main() {
	int a, b;
	scanf("%d%d", &a, &b);
	int sum = a + b;
	int radix;			//基数D 
	scanf("%d", &radix);
	int mask = 1;		//用于提取最高位上数值的掩码,基数为D(即D进制形式) 
	while (sum /= radix)
		mask *= radix;
	sum = a + b; 
	while (mask) {
		printf("%d", sum / mask);
		sum %= mask;
		mask /= radix;
	}
	return 0;
}


你可能感兴趣的:(C语言,乙级,进制数,浙大PAT)