用c仿照第一题解提交却全错,求解问题所在
查看原帖
用c仿照第一题解提交却全错,求解问题所在
1283833
_Persever_ance楼主2024/2/25 20:51
#include<stdio.h>
#include<string.h>
int main()
{
	int a[2100] = { 0 }, b[2100] = { 0 }, c[4200] = { 0 };
	int len1 = 0, len2 = 0, i = 0, j = 0, len = 0;
	char a1[2100], b1[2100];
	gets(a1);
	gets(b1);
	len1 = strlen(a1);
	len2 = strlen(b1);
	for (i = 1; i <= len1; i++)
		a[i] = a1[len1 - i] - '0';

	for (i = 1; i <= len2; i++)
		b[i] = b1[len2 - i] - '0';

	for (i = 1; i <=len1; i++)
		for (j = 1; j <=len2; j++)
			c[i+j-1] += a[i] * b[j];

	for (i = 1; i < len1 + len2; i++)
	{
		if (c[i] > 9)
		{
			c[i + 1] += c[i] / 10;
			c[i] %= 10;
		}
	}
	len = len1 + len2;
	while (c[len] == 0 && len > 1)
		len--;
	for (i = len; i >= 1; i--)
		printf("%d", c[i]);
	return 0;
}
2024/2/25 20:51
加载中...