kkkk丶 2021-10-12 08:26 采纳率: 66.7%
浏览 29
已结题

求帮我看一下这一题用C语言

有一个分数序列:2/1,3/2,5/3,8/5,13/8,21/13,等等。求出这个数列的前n项和。
输入
输入有若干行,每行一个整数n(0<=n<=1000),表示数列的项数。n=0表示结束。
输出
每行对应输出前n项的和。结果保留2位小数。
样例输入
1
5
1
5
样例输出
2.00
8.39

  • 写回答

2条回答 默认 最新

  • qzjhjxj 2021-10-12 08:57
    关注

    供参考:

    #include <stdio.h>
    int main()
    {
        int n, i, k, j, t;
        double s;
        while (scanf("%d", &n) == 1 && n != 0)
        {
            i = 1; k = 1; j = 2; s = 0;
            while (i <= n)
            {
                s += 1.0 * j / k;
                t = j + k;;
                k = j;
                j = t;
                i++;
            }
            printf("%.2f\n", s);
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月21日
  • 已采纳回答 11月13日
  • 创建了问题 10月12日