方法1
#include<stdio.h>
int main(){
int n;
double sum=1,d=1;
printf("Enter n:");
scanf("%d",&n);
for(int i=1;i<=n;i++){
d=d/i;
sum+=d;
}
printf("%.4lf",sum);
}
第2种
#include<stdio.h>
int fact(int n)
{
if(n==1||n==0) return 1;//如果参数是0或者1返回1
return n*fun(n-1);//否则返回n和下次递归的积
}
int main()
{
int n;
double sum=1;
printf("Enter n:") ;
scanf("%d",&n);
for(int i=1;i<=n;i++){
sum+=1/(double)fact(i);
}
printf("%.4lf",sum);
return 0;
}
有帮助的话麻烦采纳一下