有一个分数序列,求出这个数列的前20项之和
有一个分数序列,求出这个数列的前20项之和
答案解析:
从题目当中可以看出来,下一个分式当中的分子为上一个分式中分子和分母的和,分母为上一个分式的分子。通过这个规律不难推出下一个分式的分子和分母,需要注意的是,保存分式的结果不能使用到整数,因为有可能会有小数的存在,所以我们需要选用浮点数double
代码示例:
#include <stdio.h>
//定义循环次数
#define COUNT 20
int main()
{
//定义第一个分式的分子为a, 值为2; 定义分母为b,值为1
//定义相加的和为sum,初始值为0
double a = 2, b = 1, sum = 0;
double temp;
for (int i = 0; i < COUNT; i++)
{
sum += a / b;
//记录前一项分子
temp = a;
//前一项分子与分母之和为后一项分子
a = a + b;
//前一项分子为后一项分母
b = temp;
}
printf("前%d项之和为:sum=%9.7f\n", COUNT, sum);
return 0;
}