• C语言求n的阶乘(n!)


    从键盘输入一个数,求出这个数的阶乘,即 n!。

    算法思想

    首先要清楚阶乘定义,所谓 n 的阶乘,就是从 1 开始乘以比前一个数大 1 的数,一直乘到 n,用公式表示就是:1×2×3×4×…×(n-2)×(n-1)×n=n!

    具体的操作:利用循环解决问题,设循环变量为 i,初值为 1,i 从 1 变化到 n;依次让 i 与 sum 相乘,并将乘积赋给 sum。
    ① 定义变量 sum,并赋初值 1。
    ② i 自增 1。
    ③ 直到 i 超过 n。

    程序代码

    1. #include <stdio.h>
    2. int main()
    3. {
    4. int i,n;
    5. double sum=1;
    6. scanf("%d",&n);
    7. for(i=1;i<=n;i++)
    8. sum=sum*i;
    9. printf("%d!=%lf",n,sum);
    10. printf(" ");
    11. return 0;
    12. }

    调试运行结果

    输入 5,对应的阶乘输出情况如下所示;

    5
    5!=120.000000

    输入20,对应的阶乘输出情况如下所示:

    20
    20!=2432902008176640000.000000

    总结

    ① 由于阶乘一般较大,会超出整型甚至是长整型所能表示的范围,因此定义变量时就不能定义为整型,而应该考虑双精度数。

    ② 实训中定义了一个双精度型的变量,用来存放结果。因此在输出时应注意双精度数的输出格式。

  • 相关阅读:
    你真的知道什么是三观吗?
    iOS block 的两大常见用法
    微信小程序开发入门
    Linux 简介
    OC 的Runtime 消息转发机制
    关于 ES6 的 let ,var和 const
    python time,datetime
    python操作mysql(pymysql + sqlalchemy)
    python操作redis
    python操作memcached
  • 原文地址:https://www.cnblogs.com/Ph-one/p/10593299.html
Copyright © 2020-2023  润新知