题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
程序分析:请抓住分子与分母的变化规律。
程序源代码:
- #include
-
- int main()
- {
- int i,t;
- float sum=0;
- float a=2,b=1;
- for(i=1;i<=20;i++)
- {
- sum=sum+a/b;
- t=a;
- a=a+b;
- b=t;
- }
- printf("%9.6f\n",sum);
- }

题目:求 1 + 2! + 3! + ... + 20! 的和。
程序分析:此程序只是把累加变成了累乘。
-
- #include
-
- // 计算阶乘的函数
- unsigned long long factorial(int n) {
- unsigned long long result = 1;
- for(int i = 1; i <= n; i++) {
- result *= i;
- }
- return result;
- }
-
- int main() {
- unsigned long long sum = 0;
-
- // 计算1 + 2! + 3! + ... + 20!
- for(int i = 1; i <= 20; i++) {
- sum += factorial(i);
- }
-
- // 输出结果
- printf("1 + 2! + 3! + ... + 20!的和是: %llu\n", sum);
-
- return 0;
- }
