阶乘求和 C语言实现求阶乘之和 三种方法实现 先阶乘再累加

您所在的位置:网站首页 python用递归求阶乘加和 阶乘求和 C语言实现求阶乘之和 三种方法实现 先阶乘再累加

阶乘求和 C语言实现求阶乘之和 三种方法实现 先阶乘再累加

2024-06-30 13:36| 来源: 网络整理| 查看: 265

题目:

此处题目是以1-20的阶乘之和举例

方法一:使用一层for循环实现 代码简单快捷容易理解

代码示例如下:

#include int main() { double a = 1, sum = 0;//因为最后值可能会超出int所能接收的范围 故用double int n, i; scanf("%d", &n);//注意scanf_s和scanf的使用场景 for (i = 1; i 0; j--) { single_num *= j;//j控制阶乘 } total_sum += single_num; } printf("%lf\n", total_sum); return 0; }

运行结果如下:

 

方法三:函数递归实现 #include long int fac(unsigned int n) //定义为long int 型,避免溢出 { long int f; if (n == 0) return; //当n=0是,递归法到尽头,依次返回函数值。 f = fac(n - 1) * n; return (f); //返回最后一次函数值,即单次阶乘的最后结果 } int main() { unsigned int n; long int s =0; int i; scanf_s("%d", &n);//此处注意scanf_s与scanf的使用场景 for (i = 1; i > n; if (n > 14) return 0; for (i = 1; i < n; i++) { double b = fac(i); sum += b; } cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3