题目 1018: [编程入门]有规律的数列求和

发布时间 2023-04-06 17:53:30作者: ha_1007

有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。

 

#include<stdio.h>
int main(){
    double Sn=0,an=0,n,i,t,a=2.0,b=1.0;//a为分子,b为分母,an为单项和值,Sn为总和
    scanf("%lf",&n);
    Sn+=a/b;//第一项不在规律中,在循环前先加入
    for(i=1;i<n;i++){
        t=a;
        a=a+b;//将前一项的分子加分母给后一项的分子
        b=t;//将前一项的分子给后一项的分母
        an=a/b;
        Sn+=an;
    }
    printf("%0.2lf",Sn);
    return 0;
}