C语言:按泰勒级数公式e = 1 + 1/1! + 1/2! +1/3! + ... + 1/n!求e的值。
展开全部
#include <stdio.h>
int jiecheng(int N);
int main()
{
int n;
int a[100];
float sum=0;
printf("请输入一个整数:");
scanf("%d",&n);
for(int i=0;i<n;i++)
{
a[i]=jiecheng(i);
sum += (float)1/a[i];
}
printf("e的值为:%.6f\n",sum);
return 0;
}
int jiecheng(int N)
{
if(N==0 || N==1)
return 1;
else
return N*jiecheng(N-1);
}
运行结果如下:
追问
保留5位小数
追答
printf("e的值为:%.6f\n",sum); 把这一句的6改成5就行了嘛
展开全部
#include <stdio.h>
int main(void)
{
int n;
while(scanf("%d",&n))
{
printf("Input n\n");
double ans=1;
int i,accu=1;
for(i=1;i<=n;i++)
{
accu*=i;
ans+=1/(double)accu;
}
printf("e = %f\n",ans);
}
return 0;
}
追问
保留5位小数
追答
printf("e = %.5f\n",ans);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询