|
#include<bits/stdc++.h>
using namespace std;
int main()
{
char a[1000],b[1000];
int a1[1000]={0},b1[1000]={0},c1[2001]={0};
cin>>a>>b;
int len_a=strlen(a);//求长度
int len_b=strlen(b);
int jw=0;
for(int i=len_a-1;i>=0;i--)//反向取值 变整数
{
a1[len_a-1-i]=a[i]-'0';
}
for(int i=len_b-1;i>=0;i--)
{
b1[len_b-1-i]=b[i]-'0';
}
for(int i=0;i<len_a;i++)//乘法计算
for(int j=0;j<len_b;j++)
{
c1[i+j]+=a1[i]*b1[j];
c1[i+j+1]+=(c1[i+j]/10);
c1[i+j]=c1[i+j]%10;
}
int flag=1;
for(int i=len_a+len_b;i>=0;i--)//倒序输出
{
if((flag==1)&&c1[i]==0){}
else
{cout<<c1[i];
flag=0;
}
}
if(flag==1) cout<<0;
}
|
|