c语言中怎求数学中的e是多少啊???

来源:百度知道 编辑:UC知道 时间:2024/05/29 15:00:22

我给你介绍一个公式吧:(泰勒工式展开式)

e=1+ 1 + 1/2! +1/3! +1/4! +1/5! + ...+ 1/n!

其中,n!表示n的阶乘:n!=n*(n-1)*(n-2)*...*3*2*1;可以专门设计一个子函数求 n! ;(n越大,精确度越高)
下面是代码:

//网页上直接写的,在VC++6.0运行时如果编译出错,那就改一下分
//号和逗号

#include<stdio.h>
#define N 20
int jiecheng(int n)
{
int i=n;
int result=1;
while(i)//
{
result*=i;
i--;
}
return result;
}

void main()
{
int i;
double e=2;
for(i=2;i<N;i++)
{
e+=1/(jiecheng(i)*1.0)
}

printf("e=%lf\n",e);

}

#include <stdio.h>

void main(void)
{
int n=0;
double itmp=1.0;
double e=2.0;
int i=0;

printf("\nInput N [ 2 -- 65535 ] : ");