首页 > 编程知识 正文

如何用c语言实现阶乘,c语言中怎么求一到十的阶乘之和

时间:2023-05-05 11:22:09 阅读:242197 作者:4518

阶乘算法

分为普通阶乘及,变式阶乘,(1的阶乘+2的阶乘+3的阶乘…)


文章目录 阶乘算法前言一、普通阶乘算法二 ,阶乘递归函数三、变式阶乘阶乘优化 总结


前言

普通阶乘例如要求出4的阶乘
1* 2* 3* 4=24


提示:以下是本篇文章正文内容,下面案例可供参考

一、普通阶乘算法 int i = 0;int n = 0;int sum = 1;int ssum = 0;int input = 0;scanf("%d", &input);//阶乘 for (i=1; i <=input; i++) { sum = sum * i; ssum = sum; } printf("ret=%dn", ssum);

原理:sum里面放的就是阶乘的1 * 2* 3…input
将每次计算的结果保存到ssum里到条件不满足跳出循环
得到打印ssum的结果




二 ,阶乘递归函数 int fanc(int n) {if (n <= 1)return 1;elsen* fanc(n - 1); } 三、变式阶乘

代码如下(示例):

for (n = 1;n <= input;n++) {sum = 1;for (i = 1; i <= n; i++){sum = sum * i;}ssum =ssum+sum; }

原理:sum里面放的就是阶乘的1 * 2* 3…input每次循环完看看是否还满足条件
将累加的结果保存到ssum里到条件不满足跳出循环
得到打印ssum的结果




阶乘优化

代码如下(示例):

for(n=1;n<=input;n++){sum = sum * n;ssum = ssum+sum;}

原理是一样的只不过简写而已变成累加的方式


总结

阶乘的算法,就是普通的for循环和条件i的控制,控制好变量即可

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。