求解1!+2!+3!+4!+ ...+n!
时间: 2023-11-14 12:04:55 浏览: 123
这是一个求解1!+2!+3!+4!+...+n!的问题,其中n是一个正整数。下面提供两种解法:
方法一:
使用for循环,先计算每个数的阶乘,再将所有阶乘相加得到结果。
方法二:
同样使用for循环,但是在内循环中直接计算每个数的阶乘,并将每个数的阶乘结果相加得到结果。
具体实现可以参考以下代码:
方法一:
```c
#include <stdio.h>
int main(){
int sum=0,s=1,n,i;
//输入n
scanf("%d",&n);
//执行for循环
for(i=1;i<=n;i++){
//先进行累乘
s=s*i;
//求和
sum=sum+s;
}
//输出结果
printf("%d",sum);
}
```
方法二:
```c
#include <stdio.h>
int main(){
int i,j,N,sum=0,sum1;
//先输入N
scanf("%d",&N);
//外循环,将每个数的阶乘结果进行求和
for(i=1;i<=N;i++){
//sum1是获得某个数的阶乘结果
sum1=1;
//内循环,求第i个数的阶乘
for(j=1;j<=i;j++){
sum1=sum1*j;
}
//将求到的阶乘加到阶乘总和的结果中
sum+=sum1;
}
//输出结果
printf("%d",sum);
}
```
阅读全文