解题思路:
因为最后结果是由很多个阶乘相加,所以我们可以自定义一个阶乘函数,然后再利用循环将多个阶乘相加
首先,自定义阶乘函数
#include<iostream>
using namespace std;
long long int jiecheng(int x){
int i;
long long int y;
for (y = 1, i = 1; i <= x; i++)
y = y * i;
return y;
}
然后再利用循环,使自定义的函数的自变量从1取到n
int main()
{
long long int sn=0;
int n;
cin >> n;
for (int p = 1; p <= n; p++)
sn = jiecheng(p) + sn;
cout <<sn;
return 0;
}
最后将两步结合起来,总共使用了两次循环,便得出了结果
注意事项
结果比较长,因此要使用long long int格式,使用int格式会发生错误
参考代码:
#include<iostream>
using namespace std;
long long int jiecheng(int x){
int i;
long long int y;
for (y = 1, i = 1; i <= x; i++)
y = y * i;
return y;
}
int main()
{
long long int sn=0;
int n;
cin >> n;
for (int p = 1; p <= n; p++)
sn = jiecheng(p) + sn;
cout <<sn;
return 0;
}
0.0分
1 人评分
C语言训练-计算1977!* (C++代码)浏览:907 |
最长单词 (C语言代码)浏览:1482 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:400 |
WU-输出九九乘法表 (C++代码)浏览:1853 |
C语言程序设计教程(第三版)课后习题6.5 (C++代码)浏览:487 |
核桃的数量 (C语言代码)浏览:726 |
1012题解浏览:938 |
C语言训练-自守数问题 (C语言代码)浏览:798 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:712 |
青年歌手大奖赛_评委会打分 (C语言代码)浏览:2248 |