C言語で階乗を実装する方法はいくつありますか?

C言語では、階乗を実装するには、再帰と反復の2つの方法を使用できます。

  1. 再帰的方法:
int factorial(int n) {
    if (n == 0) {
        return 1;
    } else {
        return n * factorial(n-1);
    }
}
  1. 反復方法:
int factorial(int n) {
    int result = 1;
    for (int i = 1; i <= n; i++) {
        result *= i;
    }
    return result;
}

与两者都可能计算给定数的阶乘,但递归方法相对简便,而迭代方法则更省空间。选择使用哪种方法取决于具体需求及应用场景。

bannerAds