编写程序 , 求 e 的值

写在前面:

题解是对具体题目的编程实现,不会具体讲解C语言语法。请先大致学习好语法,自己敲敲代码后再看题解(上来就直接看题解的习惯不好哟~)。在每一题的题解之前,会列出本题涉及到的语法知识供参考,可以在教材或其他学习资源找到这些内容学习。😀


 本题的预备知识:

  • 变量的定义与赋值操作
  • 输入(scanf)输出(printf)语句 
  • for循环语句
  • 除法运算符 /

编写程序 , 求 e 的值

成绩10开启时间2020年03月28日 星期六 08:50
折扣0.8折扣时间2020年04月20日 星期一 16:50
允许迟交关闭时间2020年04月30日 星期四 13:50

编写程序,从键盘输入整数 n , 求 的值 e=1+1/1!+1/2!+1/3!+..+1/n!  注意 用 double 型数据计算


题解

此题直接明了,主要考察代码能力,不需要想算法...代码可以直接写出来:

#include <stdio.h>   //导入stdio.h库,里面包含输入输出函数

int main() {
    int n;
    scanf("%d", &n);

    double e = 1;  //初值情况
    long long int cur = 1;
    for (int i = 1; i <= n; i++) {
        cur *= i;  //计算 i! 更新入cur中
        e += 1.0 / cur;  //每次累加上 1/i! 的结果
    }
    printf("e=%f\n", e);
}

主要注意:

  1. 储存阶乘值的 cur 应该设置为 long long int (长整型变量),当n大一点时,int的范围是不够的
  2. e += 1.0 / cur 中为什么是 1.0 而不是1,与除法运算符 '/' 的规则相关,之前已经提到过。可以看看这篇文章的最后注意 计算时钟的夹角


有任何问题欢迎评论交流,如果本文对您有帮助不妨点点赞,嘻嘻~ 


end 

欢迎关注个人公众号 鸡翅编程 ”,这里是认真且乖巧的码农一枚。

---- 做最乖巧的博客er,做最扎实的程序员 ----

旨在用心写好每一篇文章,平常会把笔记汇总成推送更新~

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值