#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char s1[1001],s2[1001];
int a[1001],b[1001],c[2001],f[1001][2001];
int main(){
int alen,blen,clen,i,j,s=0;
gets(s1);
alen=strlen(s1);
gets(s2);
blen=strlen(s2);
for(i=0;i<alen;i++)
a[i+1]=s1[alen-i-1]-48;
for(i=0;i<blen;i++)
b[i+1]=s2[blen-i-1]-48;
clen=alen+blen-1;
for(i=0;i<alen;i++)
for(j=0;j<blen;j++)
f[i][j]=a[i]*b[j];
for(i=0;i<clen*2;i++)
for(j=1;j<=clen*2;j++){
c[i]+=f[i][j-i];
c[i+1]=c[i]/10;
c[i]%=10;
}
if(c[clen]>9){c[clen+1]=c[clen]/10;c[clen]%=10;clen++;}
for(i=0;i<=clen;i++)printf("%d",&c[i]);
system("pause");
return 0;
}
高精度乘法
最新推荐文章于 2021-09-27 16:19:18 发布