一.问题:
输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103
二.思路:
自己写个进制转换函数就可以了
三.代码实现:
cpp
#include<stdio.h>
#include<stdlib.h>
void func(int sum,int D)
{
int*str = (int*)malloc(sizeof(char)*1000);
int shang = sum;
int yu;
int i;
for(i =0;shang != 0;i++)
{
yu = shang % D;
shang /= D;
str[i] = yu;
}
//输出
i--;
while(i>=0)
{
printf("%d",str[i]);
i--;
}
free(str);
}
int main()
{
int A,B,D;
scanf("%d %d %d",&A,&B,&D);
if(A+B == 0)
{
printf("0");
}
else
{
func(A+B,D);
}
putchar('\n');
return 0;
}