C语言实验——分数序列

题目描述

有一个分数序列:2/1, 3/2, 5/3, 8/5, 13/8, …编写程序求出这个序列的前n项之和。

输入

输入只有一个正整数n,1≤n≤10。

输出

输出该序列前n项和,结果保留小数后6位。

样例输入

3

样例输出

5.166667

提示

此题用double类型。

代码:

#include<stdio.h>
 
int main()
{
    int n;
    int numerator = 2, denominator = 1;
    double sum = 0.0;
    scanf("%d", &n);
    while(n--)
    {
        sum += (1.0 * numerator / denominator);
        numerator += denominator;
        denominator = numerator - denominator;
    }
    printf("%.2lf", sum);
    return 0;
}

 因为n不参与运算,因此可用while(c--)

猜你喜欢

转载自www.cnblogs.com/nester/p/9912343.html