最近的文章已经学习了许多C语言的基础知识,大家一定要巩固学习,以及一些简单算法
今天讲解的是C语言的大数相乘问题:
举个例子:
123456788943524*243252432236=???
和我前一篇文章有点相关,前一篇是大数相加,这次请大家思考这个算法的实现:
![e2a9b4209b4174ea221674057d25f101.png](https://i-blog.csdnimg.cn/blog_migrate/c93fddd522c7c4cb00745605a909498f.jpeg)
代码附上(思考动手后再看):
#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<