void mul(char a[], char b[])
{
/****************装换****************/
int num1[LEN];
int num2[LEN];
for (int i = 0; i < LEN; i++){
num1[i] = 0;
num2[i] = 0;
}
int lena = strlen(a);
int lenb = strlen(b);
for (int i = lena - 1, j = 0; i >= 0; i--){
num1[j++] = a[i] - '0';
}
for (int i = lenb - 1, j = 0; i >= 0; i--){
num2[j++] = b[i] - '0';
}
/************************乘积*************/
int sum[LEN];
for (int i = 0; i < LEN; i++){
sum[i] = 0;
}
for (int i = 0; i < lena; i++)
for (int j = 0; j < lenb; j++){
sum[i + j] += num1[i] * num2[j];
if (sum[i + j] >= 10){
sum[i + j + 1] += sum[i + j] / 10;
sum[i + j] %= 10;
}
}
/*******************打印*******************/
int i;
for (i = LEN - 1; i > 0; i--){
if (sum[i] != 0)
break;
}
for (; i >= 0; i--)
cout << sum[i];
cout << endl;
}
大数乘法
最新推荐文章于 2023-02-11 11:25:04 发布