二十个一乘以二十个二等于多少?C语言经典算法设计之大数乘法
2019-03-30 本文已影响0人
C语言基础
前言
新手上路,多多关注,这真的对我很重要
本文介绍一种大数的乘法,也就是说,无论得到或者传入的数有多大,它总能计算出正确的结果。
大数乘法
由于乘法可以互换所以对于输入的数字没有限制条件,计算方法还是模仿手工算法,由被乘数的低位开始和乘数的每一位相乘并且要将大于9的十位数向前进一位,存在3个问题需要我们解决。
主要问题
我们要用多大的数组存储结果?
要使用嵌套循环吗?
如何在计算的过程中保证进位?
解决方案
二个数相乘最大的位数是两个乘数的位数之和。
很明显由于乘法的特性使用嵌套循环很合适。
在大数加减中执行完毕后再对存储结果的数组进行一次进位,但在乘法中我们需要每执行一趟就要对数组进行进位的处理