//
// 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;
}
![]()