杭电 1012 u Calculate e【算阶乘】

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1012

解题思路:对阶乘递归求和

反思:前面3个的输出格式需要注意,可以自己单独打印出来,也可以在for循环里面更改输出小数的位数,另外读题还是要仔细,输出的有9位小数。

#include<stdio.h>
double sum(int n)
{
    int i;
    double x=1,s=0;
    if(n==0)
    return 1;
    else
    {
        s=1;
    for(i=1;i<=n;i++)
    {
        x*=1.0/i;
        s+=x;
    }
    return s;
    }
}
int main()
{
    int i;
    double ss=0;
    printf("n e
");
    printf("- -----------
");
    printf("0 1
");
    printf("1 2
");
    printf("2 2.5
");
    for(i=3;i<=9;i++)
    {
        ss=sum(i);

        printf("%d %.9lf
",i,ss);
    }

}

  

原文地址:https://www.cnblogs.com/wuyuewoniu/p/4100955.html