(1)设计C语言程序,按下面的近似公式计算:e=1+1⼀1!+1⼀2!+1⼀3!+......+1⼀n!+.....

使误差小于给定的误差限E=0.0001.
2024-11-15 01:09:48
推荐回答(2个)
回答1:

#include
void main()
{
int i=1,j=1;
float e=1.0,k;
do{
j=i*j;
k=1.0/j;
e=e+k;
i++;
}while(k>1e-4);//判断误差是否小于给定的误差限E=0.0001
printf("%f\n",e);
}

回答2:

#include
#include
#define E 0.0001

int factorial(int i)
{
if((i==1)||(i==0)) return 1;
return i*factorial(i-1);
}

int main()
{
float e=1;
int i=1;
float temp;

while((temp=(float)1/factorial(i++)) >= E) e+=temp;

printf("now e=%f\n",e);
system("pause");
}

这个题主要是递归求阶乘,其实很简单~!