解题思路: 本题可以使用递归与求和分开的方式求解,下面我给出另一种解法,仅需一层for循环!
附图:
注意事项: 灵活使用数组迭代法可以代替递归达到更优的效果!
参考代码:
#include<iostream> using namespace std; long long factorialSum(int n) { long long factorial = 1, sum = 0; for (int i = 1; i <= n; i++) { factorial *= i; sum += factorial; } return sum; } int main(void) { int n; cin >> n; cout << factorialSum(n); return 0; }
祝您学习愉快!^_^
0.0分
3 人评分
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:724 |
【出圈】 (C语言代码)浏览:824 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:584 |
输出正反三角形 (C语言代码)浏览:859 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:611 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:400 |
母牛的故事 (C语言代码)浏览:992 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:632 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:1267 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:644 |