题目描述
1 | 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 |
思路
1、本题是高精度除法,1000位的数远远超过了整型的范围,所以我们需要选择字符数组来存储 A ,并且通过字符数组来存储 Q 。
2、由于已经限定 B 为 1 位整数,所以我们可以从 A 的最高位逐位进行除法,并将余数乘 10 加到下一位上。
3、注意存储时是数字字符,所以我们需要将数字字符转换为数字。
4、不要忘了在 Q 后添加 ‘\0’ 作为字符串的结束。
5、注意当 A 小于 B 时的情况。
AC代码
1 |
|