输入两个非负 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>
void huansuan(int sum,int D);
int main(){
int A,B;
int D;
scanf("%d %d %d",&A,&B,&D);
int sum=A+B;
huansuan(sum,D);
return 0;
}
void huansuan(int sum,int D){
int yushu=sum%D;
sum/=D;
if(sum<=0){
printf("%d",yushu);
return ;
}
huansuan(sum,D);
printf("%d",yushu);
}
我踩过的坑:
1.这题主要是什么时候递归结束,一个经验判断是否结束的条件一定要放在递归函数前,你放后面一定不行
2.还有最后一个数一直不输出来,后来发现,是要在返回那里处理一下,返回可以在里面加一些东西来实现自己的目的