n的阶乘JieCheng(n)== 1*2*3*... *(n-1)* n == JieCheng(n- 1)*n用c语言
时间: 2023-11-30 20:03:05 浏览: 81
以下是用C语言实现计算n的阶乘的代码:
```c
#include <stdio.h>
int JieCheng(int n) {
if (n == 0) {
return 1;
} else {
return JieCheng(n-1) * n;
}
}
int main() {
int n;
printf("请输入一个正整数: ");
scanf("%d", &n);
printf("%d的阶乘是%d\n", n, JieCheng(n));
return 0;
}
```
代码中使用了递归的方式来计算n的阶乘。当n等于0时,递归结束,返回1;否则,递归调用JieCheng函数计算n-1的阶乘,并乘以n得到n的阶乘。最后,在main函数中输入一个正整数n,并输出n的阶乘。
相关问题
计算sum=1!+2!+3!+……++n!
计算sum=1!+2!+3!+……+n!的方法有两种:
```python
# 方法一:使用while循环来计算
n = int(input())
jie = 1
sum = 0
i = 1
while n >= i:
jie = jie * i
sum = sum + jie
i = i + 1
print(sum)
# 方法二:使用递归函数调用阶乘方法求和(其中n的值在1~40之间)
def jiecheng(n):
if n == 1:
return 1
else:
return n * jiecheng(n-1)
n = int(input())
sum = 0
for i in range(1, n+1):
sum += jiecheng(i)
print(sum)
```
以上两种方法分别使用while循环和递归函数调用阶乘方法求和,可以计算出sum=1!+2!+3!+……+n!的值。
Python基础|计算s=1+1/3-1/5+1/7-1/9+...前n项
这是一个计算数列前n项和的问题,数列的规律是1+1/3-1/5+1/7-1/9+...。可以使用两种方法来计算这个数列的前n项和。
方法一:使用while循环来计算
代码如下:
n = int(input())
jie = 1
sum = 0
i = 1
while n >= i:
jie = jie * i
if i % 2 == 1:
sum = sum + 1/jie
else:
sum = sum - 1/jie
i = i + 1
print(sum)
方法二:使用递归函数调用阶乘方法求和(其中n的值在1~40之间)
代码如下:
def jiecheng(n):
if n == 1:
return 1
else:
return n*jiecheng(n-1)
n = int(input())
sum = 0
for i in range(1,n+1):
if i % 2 == 1:
sum = sum + 1/jiecheng(2*i-1)
else:
sum = sum - 1/jiecheng(2*i-1)
print(sum)
阅读全文