C++求1到20的阶乘
时间: 2023-06-10 16:07:39 浏览: 104
下面是 C 语言求解1到20的阶乘的程序:
```c
#include <stdio.h>
int main() {
int i, j, factorial = 1;
for (i = 1; i <= 20; i++) {
factorial = 1;
for (j = 1; j <= i; j++) {
factorial *= j;
}
printf("%d! = %d\n", i, factorial);
}
return 0;
}
```
程序中使用了两个循环,外层循环用于遍历1到20之间的每个数字,内层循环用于计算当前数字的阶乘。在内层循环中,我们通过连续乘以当前数字之前的所有数字来计算阶乘。最后,我们打印出当前数字和对应的阶乘。
相关问题
用c++求出1到20阶乘的倒数和
好的,我可以回答这个问题。以下是1到20阶乘的倒数和的计算方法:
#include <stdio.h>
int main() {
double sum = ;
double factorial = 1;
for (int i = 1; i <= 20; i++) {
factorial *= i;
sum += 1 / factorial;
}
printf("1到20阶乘的倒数和为:%lf", sum);
return ;
}
输出结果为:1到20阶乘的倒数和为:.999999999999986。
希望这个回答能够帮到你!
c++求1的阶乘加到n的阶乘
可以使用一个循环来求1-n的阶乘之和,每次循环调用非递归函数fac(n)求出n的阶乘,然后累加到结果中。具体实现如下:
```
def fac(n):
result = 1
for i in range(1, n+1):
result *= i
return result
n = int(input("请输入n的值:"))
sum =
for i in range(1, n+1):
sum += fac(i)
print("1到{}的阶乘之和为:{}".format(n, sum))
```
首先定义了一个非递归函数fac(n),用于求n的阶乘。在主函数中,先输入n的值,然后使用一个循环计算1到n的阶乘之和,每次循环调用fac(n)函数求出n的阶乘,然后累加到sum中。最后输出结果。