展开全部
算法步骤为,先编写n!;
然后求1/n!
最后相累加。
#include<stdio.h>
main()
{
int i,j;
long p;
double e;
int n=1000;
for(i=1,e=1;i<=n;i++)
{
for(j=1,p=1;j<=i;j++)
p=p*j;
e=e+1.0/p;
}
printf("e=%lf",e);
}
在这里用了两次for循环,内存循环,计算p值,即n!,外层循环,计算各项累加,这两次循环,必须的,可以上机调试。注意标点;
或:采用do……while循环,求e值,并使1/n!<10^-6
#include "stdio.h"
main()
{ int n, k;
double e, t, p;
e=1.0; n=1;
do
{p=1.0;
for(k=1;k<=n; k++)
p=p*k;
t=1.0/p;
e=e+t;
n++;} while(t>=1e-6);
printf("e=%lf \n", e);
}
然后求1/n!
最后相累加。
#include<stdio.h>
main()
{
int i,j;
long p;
double e;
int n=1000;
for(i=1,e=1;i<=n;i++)
{
for(j=1,p=1;j<=i;j++)
p=p*j;
e=e+1.0/p;
}
printf("e=%lf",e);
}
在这里用了两次for循环,内存循环,计算p值,即n!,外层循环,计算各项累加,这两次循环,必须的,可以上机调试。注意标点;
或:采用do……while循环,求e值,并使1/n!<10^-6
#include "stdio.h"
main()
{ int n, k;
double e, t, p;
e=1.0; n=1;
do
{p=1.0;
for(k=1;k<=n; k++)
p=p*k;
t=1.0/p;
e=e+t;
n++;} while(t>=1e-6);
printf("e=%lf \n", e);
}
展开全部
要简单易懂的,看我的!
long jc(int n){
long sum=1;
if(n==0) return 1;
for(int i=1;i<=n;i++)sum*=i;return sum;
}
//对n求阶乘
main(){
long sum=0;
int n;
scanf("%d",&n);
for(int i=0;i<=n;i++)
sum+=1/jc(i);
}
//sum即最后的结果
long jc(int n){
long sum=1;
if(n==0) return 1;
for(int i=1;i<=n;i++)sum*=i;return sum;
}
//对n求阶乘
main(){
long sum=0;
int n;
scanf("%d",&n);
for(int i=0;i<=n;i++)
sum+=1/jc(i);
}
//sum即最后的结果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int i,j,n;
double e=1,temp=1;
printf("n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
temp*=i;
e+=1/(double)temp;
}
printf("e=%f\n",e);}
void main()
{
int i,j,n;
double e=1,temp=1;
printf("n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
temp*=i;
e+=1/(double)temp;
}
printf("e=%f\n",e);}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
void main(void)
{
const int n=100;
double e=1,s=1;
int i;
for (i=1;i<=n;i++)
{
s/=i;
e+=s;
}
printf("%lf",e);
}
void main(void)
{
const int n=100;
double e=1,s=1;
int i;
for (i=1;i<=n;i++)
{
s/=i;
e+=s;
}
printf("%lf",e);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include "stdio.h"
main()
{
int n,s;
int i,j;
doublesum,item;
sum=1;
printf("Entern:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
item=1;
for(j=1;j<=i;j++)
{
item=item*j;
}
sum=sum+1/item;
}
printf("1+1!+1/2!+1/3!.....+1/n!=%.2f",sum);
}
main()
{
int n,s;
int i,j;
doublesum,item;
sum=1;
printf("Entern:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
item=1;
for(j=1;j<=i;j++)
{
item=item*j;
}
sum=sum+1/item;
}
printf("1+1!+1/2!+1/3!.....+1/n!=%.2f",sum);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询