// // main.cpp // w1-4 求两个正整数的乘积 // // Created by 李俊杰 on 2023/2/21. // #include <iostream> #include <string.h> using namespace std; int main() { char A[50000],B[50000];//输入数组,char型 int x=0,y=0; int mul[50000],a[50000],b[50000]; cin>>A>>B; x=strlen(A); y=strlen(B); for(int i=0;i<x;i++) a[x-i-1]+=A[i]-'0';//字符转数字,注意倒序方便处理进位 for(int i=0;i<y;i++) b[y-1-i]+=B[i]-'0'; for(int i=0;i<x;i++){//每位相乘 for(int j=0;j<y;j++){ mul[i+j]+=a[i]*b[j];//注意是i+j } } int len=x+y-1;//精准位数 for(int i=0;i<len;i++){//处理进位 mul[i+1]+=mul[i]/10; mul[i]=mul[i]%10; } if(mul[len]) cout<<mul[len];//特判第一位是否要进位,若要则输入,若不要则不输出 for(int i=0;i<len;i++){//从后一位开始倒序输出 cout<<mul[len-i-1]; } return 0; }