C语言高精度计算 整数减法描述两个十进制非负整数M和N,计算二者的差,既M-N.M、N最多可以是长度为200位的整数.输入多组数据,每组数据先是一行表示M,然后一行表示N.M和N开头均无冗余的0.输出
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/17 10:07:38
![C语言高精度计算 整数减法描述两个十进制非负整数M和N,计算二者的差,既M-N.M、N最多可以是长度为200位的整数.输入多组数据,每组数据先是一行表示M,然后一行表示N.M和N开头均无冗余的0.输出](/uploads/image/z/3552379-43-9.jpg?t=C%E8%AF%AD%E8%A8%80%E9%AB%98%E7%B2%BE%E5%BA%A6%E8%AE%A1%E7%AE%97+%E6%95%B4%E6%95%B0%E5%87%8F%E6%B3%95%E6%8F%8F%E8%BF%B0%E4%B8%A4%E4%B8%AA%E5%8D%81%E8%BF%9B%E5%88%B6%E9%9D%9E%E8%B4%9F%E6%95%B4%E6%95%B0M%E5%92%8CN%2C%E8%AE%A1%E7%AE%97%E4%BA%8C%E8%80%85%E7%9A%84%E5%B7%AE%2C%E6%97%A2M-N.M%E3%80%81N%E6%9C%80%E5%A4%9A%E5%8F%AF%E4%BB%A5%E6%98%AF%E9%95%BF%E5%BA%A6%E4%B8%BA200%E4%BD%8D%E7%9A%84%E6%95%B4%E6%95%B0.%E8%BE%93%E5%85%A5%E5%A4%9A%E7%BB%84%E6%95%B0%E6%8D%AE%2C%E6%AF%8F%E7%BB%84%E6%95%B0%E6%8D%AE%E5%85%88%E6%98%AF%E4%B8%80%E8%A1%8C%E8%A1%A8%E7%A4%BAM%2C%E7%84%B6%E5%90%8E%E4%B8%80%E8%A1%8C%E8%A1%A8%E7%A4%BAN.M%E5%92%8CN%E5%BC%80%E5%A4%B4%E5%9D%87%E6%97%A0%E5%86%97%E4%BD%99%E7%9A%840.%E8%BE%93%E5%87%BA)
xSN@XVH RsTǪ%1%r 1@IQqn/:.j_ZU}jd%9sD-lcs;eԃlݔX(&=jթu
qTEB% $Iw6u+_%fs=dPA]4A6jaU<d91>Xt..sv[Px|L0D>T\LNG(vte#;:/d9GBI"P+/FT>jDLNXSGg}VhȚ$*:{u?^0yT[ܟ624Z46?jqzWms^`i]r7[6]{eBsŃ~VR^V~9_!r
/#06ɿ#\^D{܄y{t{#.Wj j.d_z;"
C语言高精度计算 整数减法描述两个十进制非负整数M和N,计算二者的差,既M-N.M、N最多可以是长度为200位的整数.输入多组数据,每组数据先是一行表示M,然后一行表示N.M和N开头均无冗余的0.输出
C语言高精度计算 整数减法
描述
两个十进制非负整数M和N,计算二者的差,既M-N.
M、N最多可以是长度为200位的整数.
输入
多组数据,每组数据先是一行表示M,然后一行表示N.M和N开头均无冗余的0.
输出
每行一个数,表示M-N,开头不能有冗余的0,既不能输出05这样的数,而应该直接输出5.
样例输入
9999
4567
0
1
样例输出
5432
-1
C语言高精度计算 整数减法描述两个十进制非负整数M和N,计算二者的差,既M-N.M、N最多可以是长度为200位的整数.输入多组数据,每组数据先是一行表示M,然后一行表示N.M和N开头均无冗余的0.输出
用高精度算法来实现,即用数组或指针来储存数字,例如A〔20〕来储存a ,用B〔20〕来储存b,这样a 和b就可以是很大的数,再用一个C〔21〕来储存结果,为什么C要21呢,你知道,加法是要近位的,这里给出相加的伪代码,d =0/*用来存储近位*/,for i=0到19{c=A〔i〕+B〔i〕+d ,d =c/10,c=c%10,C〔i〕=c}if d 不等于0 C〔i+1〕=d ,再逆的输出C就可以了!编程要学会思考,现在你可以试试编下高精度乘法,例如可以输出100的阶乘!