和+,-,一样
#include<bits/stdc++.h> using namespace std; char a[10001],b[10001]; int x[10001],y[10001],i,j,len,n1,n2,jw=0,c[10001]; int main() { cin>>a>>b; n1=strlen(a); n2=strlen(b); for(i=0;i<n1;i++) x[n1-i]=a[i]-'0'; for(i=0;i<n2;i++) y[n2-i]=b[i]-'0'; for(i=1;i<=n1;i++) { int ans=0; for(j=1;j<=n2;j++) { c[i+j-1]=x[i]*y[j]+ans+c[i+j-1];//因为i=1,j=1,所以i+j-1存积 ans=c[i+j-1]/10;//进位 c[i+j-1]%=10; } c[i+n2]=ans; } len=n1+n2; while(c[len]==0&&len>1) len--;//去0 for(i=len;i>=1;i--) cout<<c[i]; }