当前位置:首页 > 行业动态 > 正文

c语言中n的阶乘怎么表示

在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的阶乘,并将结果输出。

0