输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1 输入格式: 输入在一行中依次给出 3 个整数 A、B 和 D。 输出格式: 输出 A+B 的 D 进制数。 输入样例: 123 456 8 输出样例: 1103 二.思路: 本题目注意,A+B等于0时候的情况,此时不管是转换为几进制都是0! 三.代码: #include#includevoid 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); //判断A+B是否等于0 if(A+B == 0) { printf("0"); } else { func(A+B,D); } putchar('\n'); return 0;}
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103
本题目注意,A+B等于0时候的情况,此时不管是转换为几进制都是0!
#include#includevoid 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); //判断A+B是否等于0 if(A+B == 0) { printf("0"); } else { func(A+B,D); } putchar('\n'); return 0;}
京公网安备 11010502049817号