编译c语言程序,求e,e=1+1/1!+1/2!+1/3!+......+1/n!
3个回答
展开全部
(1)for循环:
#include "stdio.h"
void main()
{
int i;
long s=1;
double e=1.0;
for(i=1;i<=50;i++)
{
s*=i;
e+=1.0/s;
}
printf("%lf",e);
}
(2)while循环:
#include "stdio.h"
void main()
{
int i=1;
long s=1;
double e=1.0;
while(1.0/s>=1e-4)
{
s*=i++;
e+=1.0/s;
}
printf("%lf",e);
}
#include "stdio.h"
void main()
{
int i;
long s=1;
double e=1.0;
for(i=1;i<=50;i++)
{
s*=i;
e+=1.0/s;
}
printf("%lf",e);
}
(2)while循环:
#include "stdio.h"
void main()
{
int i=1;
long s=1;
double e=1.0;
while(1.0/s>=1e-4)
{
s*=i++;
e+=1.0/s;
}
printf("%lf",e);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
stdafx.h是预编译头文件,顾名思义,预编译时使用,工程设置中如果不需要可以注释掉。如果需要可以自己生成一个,或从其他工程中复制。其做用是加速编译的d
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
double fun(int n);
int main()
{
int i;
double e1=0,e2=0;
for(i=0;i<50;i++)
{
e1+=fun(i);
}
i=0;
while(fun(i)>=0.0001)
{
e2+=fun(i);
i++;
}
printf("%lf %lf\n",e1,e2);
return 0;
}
double fun(int n)
{
if(n==0||n==1)
return 1;
else return 1.0/n*fun(n-1);
}
double fun(int n);
int main()
{
int i;
double e1=0,e2=0;
for(i=0;i<50;i++)
{
e1+=fun(i);
}
i=0;
while(fun(i)>=0.0001)
{
e2+=fun(i);
i++;
}
printf("%lf %lf\n",e1,e2);
return 0;
}
double fun(int n)
{
if(n==0||n==1)
return 1;
else return 1.0/n*fun(n-1);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询