PAT B1022 D进制的A+B (20 分)】的更多相关文章

题目描述: 输入两个非负10进制整数A和B(≤230-1),输出A+B的D(1<D≤10)进制数. 输入格式: 输入在一行中依次给出3个整数A.B和D. 样例: 输入:123 456 8 输出:1103 思路: 先计算A+B的值,然后再将其转换为D进制.可使用“除基取余法”. 注意点: A+B的范围在int范围内 最好使用do···while语句.使用while语句要特判A+B等于0的情况 存储A+B%D的数组要从高位到低位进行输出 代码: #include<iostream> usin…
1022 D进制的A+B (20分) 输入两个非负 10 进制整数 A 和 B ( ≤ 2​30​​ −1),输出 A+B 的 D (1<D≤10)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 D. 输出格式: 输出 A+B 的 D 进制数. 输入样例: 123 456 8 输出样例: 1103 总结 进制转换问题,用链表的数据结构,采用头插法建表,做出类似栈的结构 第3个测试用例是0 0 2,测试你的代码是否有判断链表为空的情况 头插法建表时,要对main函数里的head…
题目:1022 D进制的A+B (20 分) 思路: 首先根据A.B的取值范围,可知A+B不过2^31,所以转换成进制数时的最长长度为31. 转换成进制的数存进数组,然后反向输出. 要注意和为0的情况,当作特例处理,直接输出0,否则测试点3会错. 代码: #include <cstdio> #include <cstring> #include <iostream> #include <sstream> #include <cmath> #inc…
输入两个非负 10 进制整数 A 和 B (≤),输出 A+B 的 D (1)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 D. 输出格式: 输出 A+B 的 D 进制数. 输入样例: 123 456 8 输出样例: 1103 #include <cstdio> #include <iostream> //const int MAXN = 100000; //int score[MAXN] = { 0 }; int main() { int a, b, c,…
输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数. 输入格式: 输入在一行中依次给出3个整数A.B和D. 输出格式: 输出A+B的D进制数. 输入样例: 123 456 8 输出样例: 1103要特别注意a+b=0的情况 #include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h> int main(){ l…
输入两个非负10进制整数A和B(<=2^30^-1),输出A+B的D (1 < D <= 10)进制数. 输入格式: 输入在一行中依次给出3个整数A.B和D. 输出格式: 输出A+B的D进制数. 输入样例: 123 456 8 输出样例: 输入两个非负10进制整数A和B(<=2^30^-1),输出A+B的D (1 < D <= 10)进制数. 输入格式: 输入在一行中依次给出3个整数A.B和D. 输出格式: 输出A+B的D进制数. 输入样例: 123 456 8 输出样…
输入两个非负 10 进制整数 A 和 B (≤),输出 A+B 的 D (1)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 D. 输出格式: 输出 A+B 的 D 进制数. 输入样例: 123 456 8 输出样例: 1103 #include <iostream> #include <stack> using namespace std; int main() { int A,B,radix; cin>>A>>B>>rad…
输入两个非负 10 进制整数 A 和 B (≤),输出 A+B 的 D (1)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 D. 输出格式: 输出 A+B 的 D 进制数. 输入样例: 123 456 8 输出样例: 1103 #include <iostream> #include <algorithm> #include <stack> #include <string> #include <cstring> using…
思路 设t = A + B,将每一次t % d的结果保存在int类型的数组s中 然后将t / d,直到 t 等于 0为止 此时s中保存的就是 t 在 D 进制下每一位的结果的倒序 最后倒序输出s数组 #include <iostream> using namespace std; int main() { int a, b, d; cin >> a >> b >> d; int t = a + b; if (t == 0) { cout << 0…
课本AC代码 #include <cstdio> int main() { int a, b, d; scanf("%d%d%d", &a, &b, &d); int sum = a + b; int ans[31], num = 0; do { ans[num++] = sum % d; sum /= d; } while(sum != 0); for(int i = num - 1; i >= 0; i--) { printf("…