21xrx.com
2024-11-25 05:07:16 Monday
登录
文章检索 我的文章 写文章
C++求n的阶乘,输入整数n
2023-07-05 02:55:07 深夜i     --     --
C++ 求阶乘 整数n 输入

C++是一种高级编程语言,可以进行各种计算和操作。在C++中,求n的阶乘是一种常见的数学计算问题,可以使用循环或递归方法来实现。

首先,使用循环方法求n的阶乘。循环方法是通过一个计数器不断累乘,直到计数器达到n,得到n的阶乘。以下是使用循环方法实现的C++代码:


#include <iostream>

using namespace std;

int main() {

  int n, factorial = 1;

  cout << "请输入一个整数n:";

  cin >> n;

  for (int i = 1; i <= n; i++) {

    factorial *= i;

  }

  cout << n << "的阶乘是:" << factorial << endl;

  return 0;

}

以上代码中,使用for循环语句来累乘,变量factorial初始值为1,每次循环将i乘以factorial得到新的factorial值,累乘直到i等于n为止。

其次,使用递归方法求n的阶乘。递归方法是指函数调用自身来解决问题的方法。以下是使用递归方法实现的C++代码:


#include <iostream>

using namespace std;

int factorial(int n) {

  if (n == 0)

    return 1;

  

  else {

    return n * factorial(n - 1);

  }

}

int main() {

  int n;

  cout << "请输入一个整数n:";

  cin >> n;

  cout << n << "的阶乘是:" << factorial(n) << endl;

  return 0;

}

以上代码中,使用递归函数factorial()来计算n的阶乘。如果n等于0,阶乘为1;否则递归调用factorial(n-1)来计算n的前一个数的阶乘,并将n乘以该数的阶乘。递归终止条件是n等于0。

综上所述,C++求n的阶乘可以使用循环或递归方法实现,两种方法各有优缺点,可以根据具体情况选择合适的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复