c语言求e,精确到小数点后一万位

来源:百度知道 编辑:UC知道 时间:2024/06/25 10:10:21
用泰勒公式做,e=1+1/1!+1/2!+1/3!+......+1/100!
加到100的阶乘分之一就行,要求打印出小数点以后10000位
如果怕内存不够,打出以一千位也行,
做出来一定加分!
最好是给出代码,要是给出算法就请具体一点
各位大虾,小弟这不是闲着没事住弄人,确实是有一道题要这样的,好像提示要用到数组
我是数学系的,数学方面还是可以的,我需要的C语言代码,暂时不会C++,希望能有C的代码,

这问题挺简单的,弄个大数运算而已。
先算100!,算这个的过程中从1到99的阶也给算出来了,然后算1!+.....+100!,最后把结果除以100!
这里面需要大数乘法、除法与加法,资料有的是,原理也很简单,不想赘述。

/*给个求大数阶乘的自编程序你,
下面的自己看着办吧
10000!两三秒吧,如果不输出更快
而且计算出10000!之前需要计算出之前的2-9999的阶乘
所以针对你的问题只要一次就可以了*/

/*
2 (C) Xuotoa 2008 http://www.xuotoa.cn/
3
4 Filename : BigNumberFact.c
5 Compiler : Visual C++ 6.0 / Visual Studio 2008
6 Description : Calculate the factory of big number
7 Release : 12/20/2008 1.0
8 */

#include <stdio.h>
#include <stdlib.h>

int a[8000], n, i, j, carry, temp, digit = 1;

int Fact(int n);

void main()
{
/*FILE *fp;
if((fp = fopen("fac_result.log","w")) == NULL)
{
printf("Cannot open this file.\n");
exit(0);
}*/
printf("Please input n: ");