c语言大数相乘的算法_颖儿教你编代码《C语言进阶》 大数相乘

最近的文章已经学习了许多C语言的基础知识,大家一定要巩固学习,以及一些简单算法

今天讲解的是C语言的大数相乘问题:

举个例子:

123456788943524*243252432236=???

和我前一篇文章有点相关,前一篇是大数相加,这次请大家思考这个算法的实现:

e2a9b4209b4174ea221674057d25f101.png

代码附上(思考动手后再看):

#include#include#includeusing namespace std;int main(){char num1[1500];char num2[1500];cin>>num1>>num2;int n = strlen(num1);int m = strlen(num2);int c[3000]={0};int a[1500];int b[1500];int z = 0;for(int i = n-1,j = 0;i>=0;i--,j++){a[j]=num1[i]-'0';}for(int i = m-1,j=0;i>=0;i--,j++){b[j]=num2[i]-'0';}for(int i = 0;i=10){c[i+1]+=c[i]/10;c[i]%=10;}}for(z = 2999;z>=0;z--){if(c[z]!=0){break;}}for(int i = z;i>=0;i--){cout<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值