大佬们为什么我写的高精前面会出现好几个零?
查看原帖
大佬们为什么我写的高精前面会出现好几个零?
840100
haoyelll楼主2022/12/4 20:36
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
	int n,  a[1001] = { 1 }, b[1001] = { 1 }, i, j;
	scanf("%d", &n);
	for (i = 2; i <= n; i++)
	{
		for (j = 0; j <= i; j++)
			b[j] *= i;
		for (j = 0; j <= i; j++)
		{
			if (b[j] >9)
			{
				b[j + 1] += b[j] / 10;
				b[j] %= 10;
			}
		}		
		for (j = 0; j <= i; j++)
		{
			a[j] += b[j];
			if (a[j] >9)
			{
				a[j + 1] += a[j] / 10;
				a[j] %= 10;
			}
		}
	}
	for (i;i>0&& a[i] == 0; i--)
		for (j = i; j >= 0; j--)
			printf("%d",a[j]);
	return 0;
}
2022/12/4 20:36
加载中...