robin88 • 3个月前
using namespace std; int a[241],b[241],c[500]; void dx (){
char m[240],n[240];
cin>>m>>n;
a[0]=strlen(m);
b[0]=strlen(n);
//逆序
for(int i=1;i<=a[0];i++){
a[i]=m[a[0]-i]-'0';
}
for(int i=1;i<=b[0];i++){
b[i]=n[b[0]-i]-'0';
}
} void mul(){
//模仿乘法
for(int i=1;i<=b[0];i++){
int k=0;
for(int j=1;j<=a[0];j++){
c[i+j-1]=a[j]*b[i]+k+c[i+j-1];
k=c[i+j-1]/10;
c[i+j-1]%=10;
}
c[i+a[0]]=k;
}
} void p(){
//倒序输出
c[0]=a[0]+b[0];
while(c[c[0]]==0 && c[0]>1){
c[0]--;
}
for(int i=c[0];i>=1;i--){
cout<<c[i];
}
} int main() {
dx();
mul();
p();
return 0;
}
评论:
请先登录,才能进行评论