计算n的阶乘 您所在的位置:网站首页 lnxi的阶乘 计算n的阶乘

计算n的阶乘

2023-07-23 04:56| 来源: 网络整理| 查看: 265

题目:计算n的阶乘 先上代码

#include int main() { int i = 0; int n = 0; int num = 1; printf("请输入n的取值:"); scanf("%d", &n); for (i = 1; i int i = 0; int n = 0; int num = 1; int sum = 0; for (i = 1; i int n = 0; int i = 0; int num = 1; int sum = 0; for (n = 1; n num = num * i; } sum = sum + num; } printf("%d", sum); }

这段代码的思想是计算1!,2!,……,10!,再这些阶乘加起来,但是我们发现结果和第一种方法答案不一样,那么错在哪呢?可以看到在计算阶乘时,num并没有初始化,也就是说在计算阶乘的过程中num的取值保留了上一次的计算结果,这就会导致计算结果错误,那么如何改正,看看下面代码:

#include int main() { int n = 0; int i = 0; int num = 1; int sum = 0; for (n = 1; n num = num * i; } sum = sum + num; } printf("%d", sum); }

这段代码中就将num在计算前进行了初始化因此结果没有出错与第一个方法结果相同,但是相比于第一种计算方法,并不建议采用第二种,因为在计算时,我们看到第一种是采用累乘,而第二种是暴力求解,将阶乘一个一个的算出来,效率就要低很多,所以我们还是采用第一种方法。 好了,今天的分享就是这么多,希望对诸位有所帮助,如有错误或者意见欢迎指正。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有