在C语言中,可以使用循环和递归两种方法来计算n的阶乘。
(图片来源网络,侵删)1、使用循环的方法计算n的阶乘:
#include <stdio.h> int main() { int n, factorial = 1; printf("请输入一个整数n: "); scanf("%d", &n); for (int i = 1; i <= n; i++) { factorial *= i; } printf("%d的阶乘为: %d ", n, factorial); return 0; }
上述代码中,首先声明了一个变量factorial
用于存储阶乘的结果,初始值为1,然后通过循环从1到n进行迭代,每次迭代将当前迭代变量i的值与factorial
相乘,并将结果重新赋值给factorial
,最后输出n的阶乘结果。
2、使用递归的方法计算n的阶乘:
#include <stdio.h> int factorial(int n) { if (n == 0 || n == 1) { return 1; // 当n为0或1时,阶乘为1 } else { return n * factorial(n 1); // 递归调用,将n与(n1)的阶乘相乘 } } int main() { int n; printf("请输入一个整数n: "); scanf("%d", &n); printf("%d的阶乘为: %d ", n, factorial(n)); // 调用递归函数计算阶乘并输出结果 return 0; }
上述代码中,定义了一个名为factorial
的递归函数,用于计算n的阶乘,该函数接受一个参数n,如果n为0或1,则返回1;否则,将n与(n1)的阶乘相乘作为结果返回,在主函数中,用户输入一个整数n,然后调用factorial
函数计算n的阶乘,并将结果输出。
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。