c++ 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字。
时间: 2023-11-24 19:51:27 浏览: 95
以下是两种C++求Sn=1!+2!+3!+4!+5!+…+n!之值的例子:
1.使用嵌套循环计算阶乘和
```c++
#include <iostream>
using namespace std;
int main() {
long long s,n,i,j,p;
s=0;
cin>>n;//从1累加到n
for(i=1;i<=n;i++) {
p=1;
for(j=1;j<=i;j++)
p*=j;
s+=p;
}
cout<<s<<endl;
return 0;
}
```
2.使用单层循环计算阶乘和
```c++
#include<stdio.h>
int main() {
long long sum=0,m=1;
int i,num;
scanf("%d",&num);
for(i=1;i<=num;i++) {
m*=i;
sum+=m;
}
printf("%lld",sum);
return 0;
}
```
相关问题
c++ 求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字。 输入 n 输出 和 样例输入 5 样例输出 153
这是一个求Sn=1!+2!+3!+4!+5!+…+n!之值的问题,其中n是一个数字。可以使用循环或递归的方法解决。以下是一个C++的循环解决方法的示例代码:
```
#include <iostream>
using namespace std;
int main() {
int n;
long long s = 1, sum = 0;
cin >> n;
for (int i = 1; i <= n; i++) {
s *= i;
sum += s;
}
cout << sum;
return 0;
}
```
以上代码中,使用了一个long long类型的变量sum来保存Sn的值,使用了一个for循环来计算每个数的阶乘并累加到sum中。注意,由于阶乘和阶乘累加的结果均已超出int整型表示范围,因此需要使用long long类型进行定义。
用c++求Sn=1!+2!+3!+...+n!
好的,以下是使用C++语言计算Sn=1!+2!+3!+...+n!的代码:
```c++
#include <iostream>
using namespace std;
int main() {
int n, s = 0, f = 1; // 初始化s为0,f为1
cout << "请输入n的值:";
cin >> n;
for (int i = 1; i <= n; i++) {
f *= i; // 计算i的阶乘,即i!
s += f; // 将i!加入到s中
}
cout << "Sn的值为:" << s << endl;
return 0;
}
```
运行程序,输入n的值,即可得到Sn的值。
阅读全文