Codeup
问题 I: 习题5-10 分数序列求和
时间限制: 1 Sec 内存限制: 12 MB提交: 611 解决: 537
[提交][状态][讨论版][命题人:外部导入]
题目描述
有如下分数序列
求出次数列的前20项之和。
请将结果的数据类型定义为double类型。
输入
无
输出
小数点后保留6位小数,末尾输出换行。
样例输入
无
样例输出
32.660261
1 #include <stdio.h> 2 double f(); 3 int main(){ 4 printf("%.6f",f()); 5 return 0; 6 } 7 double f(){ 8 int a[24]; 9 a[0] = 1; 10 a[1] = 1; 11 int n = 24; 12 for (int i = 2; i < n ; i++){ 13 a[i] = a[i-1] + a[i-2]; 14 } 15 double result = 0.0; 16 for (int i = 0; i < 20; i++){ 17 result += a[i+2] * 1.0 / a[i+1]; 18 } 19 return result; 20 }
比斐波那契数列更优化的代码