n的阶乘,用for语句
时间: 2023-05-17 22:04:07 浏览: 51
计算n的阶乘可以使用for循环语句,代码如下:
```
int n = 5;
int result = 1;
for(int i=1; i<=n; i++){
result *= i;
}
cout << n << "的阶乘是:" << result << endl;
```
这段代码中,我们定义了一个变量n表示要计算阶乘的数,另外定义了一个变量result表示阶乘的结果,初始值为1。然后使用for循环语句,从1到n遍历每个数,将其乘到result中,最终得到n的阶乘。
相关问题
用for 语句以及递归方法计算n的阶乘
使用 for 循环计算 n 的阶乘可以这样写:
```python
def factorial(n):
result = 1
for i in range(1, n+1):
result *= i
return result
```
使用递归方法计算 n 的阶乘可以这样写:
```python
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n-1)
```
其中,当 n 等于 0 或 1 时,阶乘为 1,否则阶乘等于 n 乘以 n-1 的阶乘。
c语言for语句计算阶乘
下面是一个使用for语句计算阶乘的示例代码:
```c
#include <stdio.h>
int main() {
int n, fact = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
fact *= i;
}
printf("%d的阶乘是%d\n", n, fact);
return 0;
}
```
在这个程序中,我们首先定义了两个变量,n和fact,分别用来存储用户输入的正整数和计算出的阶乘。然后,我们通过scanf函数从用户那里获取输入,接着使用for循环从1到n遍历所有的数字,并将它们乘以fact。最后,我们使用printf函数输出阶乘的值。
例如,如果用户输入5,则输出:
```
请输入一个正整数:5
5的阶乘是120
```
注意,这个程序假设用户输入的是一个正整数。如果用户输入的是负数或0,那么结果将是不正确的。此外,如果用户输入的数太大,阶乘可能会超过int类型的最大值,导致溢出错误。