如何计算任意正整数n的阶乘?

如题所述

n的阶乘是n的所有正整数的乘积,用符号n!表示,其中n的阶乘的定义是:

n!=n×(n-1)×(n-2)×…×2×1

比如n=5,则5的阶乘等于5×4×3×2×1,即5!=120。

n的阶乘可以利用一个循环结构来求解,以n=5为例:

首先定义一个变量sum,其初始值为1,然后令i=5,令sum=sum*i,变为sum=1*5=5,然后i=4,令sum=sum*i,变为sum=5*4=20,

依此类推,最后sum=20*3*2*1=120,即5!=120。

由此可知,循环结构可以用来求任意正整数n的阶乘,

具体程序框架如下://求n的阶乘

int sum = 1; //定义变量sum,初始值为1

for (int i=n; i>=1; i--){ //从n开始,到1结束,每次减1

sum = sum*i; //将sum乘以i}

//循环结束后,sum即为n的阶乘

因此,任意正整数n的阶乘等于用一个循环结构将从n到1的乘积相乘得到。

温馨提示:答案为网友推荐,仅供参考