#include <iostream>
using namespace std;
const int N = 1000; //自定义大数的长度,可以根据需要调整
void LongMulti(char* str1,char* str2)
{
int result[N] = {0};
int i,j;
int str1_lenght = strlen(str1);
int str2_lenght = strlen(str2);
//计算
for(i=str1_lenght-1;i>=0;i--)
{
for(j=str2_lenght-1;j>=0;j--)
result[str1_lenght-1-i + str2_lenght-1-j] += (str1[i]-'0')*(str2[j]-'0');
}
for(i=0;i<str1_lenght+str2_lenght-1;i++)
{
result[i+1] += result[i]/10;
result[i]%=10;
}
if(result[i-1]>9)
{
result[i] /= 10;
result[i-1] %= 10;
}
//输出
int n = N-1;
while(result[n]==0)
n--;
cout<<"result/>";
for(i = n;i>=0;i--)
cout<<result[i];
cout<<endl;
}
int main(int argc,char *argv[])
{
char str1[N],str2[N];
char ch = 'y';
while('y'==ch)
{
cout<<"Input a number/>";
cin>>str1;
cout<<"Input another number/>";
cin>>str2;
LongMulti(str1,str2);
cout<<"Continue?(y/n):";
cin>>ch;
}
return 1;
}