一个求 1——n 中所有数阶乘的程序
#include <stdio.h>
int a[100000];//数组大点安全
int main()
{
int i, dig = 1, jin = 0, n;
a[0] = 1;
scanf("%d", &n);
for(int i = 1; i <= n; i++)
{
for(int j = 0; j < dig; j++)
{
a[j] = a[j]*i+jin;
jin = a[j]/10;
a[j] %= 10;
}
while(jin)
{
a[dig++] = jin%10;
jin/=10;
}
printf("%d!:\t", i);
for(int i = dig-1; i >= 0; i--)
{
printf("%d", a[i]);
}
putchar('\n');
}
return 0;
}