实验4-2-2 求e的近似值 | 浙大版《C语言程序设计实验与习题指导(第3版)》题目集

实验4-2-2 求e的近似值

自然常数e可以用级数1+1/1!+1/2!+⋯+1/n!来近似计算。本题要求对给定的非负整数n,求该级数的前n项和。

输入格式:

输入第一行中给出非负整数n(≤1000)。

输出格式:

在一行中输出部分和的值,保留小数点后八位。

输入样例:

10

输出样例:

2.71828180

代码一:使用两重循环

#include 

int main(){
    
    double e, item;
    int i, j, n;
    
    scanf("%d", &n);
    e = 1;
    
    
    for(i=1; i<=n; i++){
        item = 1;
        for(j=1;j<=i;j++){
            item = item*j;
        }
        e =e+1.0/item;
    }
    
    printf("%.8f\n",e);
    
    return 0;
}


代码二:定义和调用函数fact(n)

#include 
double fact(int a);
int main(){
    
    double e;
    int i, j, n;
    
    scanf("%d", &n);
    e = 1;
    
    
    for(i=1; i<=n; i++){

        e =e+1.0/fact(i);
    }
    
    printf("%.8f\n",e);
    
    return 0;
}
double fact(int a){
    double fact;
    int i;
    fact = 1;
    for(i=1;i<=a;i++){
        fact = fact*i;
    }
    return fact;
}

代码三:使用一重循环,不使用自定义函数

//还没想出来呢gg   :D

你可能感兴趣的:(代码练习,C语言练习册)