一个C语言问题,求解答

33.编写程序,求以下数列前n项的和,n从键盘输入。

数列为: 2/1 -3/2 5/3 -8/5 等等

#include <stdio.h>
int main()
{
    int n;
    double sum=0,flag=1;
    scanf("%d",&n);
    int t[n+1];
    t[0]=1,t[1]=2,t[2]=3;
    for(int i=3;i<n+1;i++)
    {
        t[i]=t[i-1]+t[i-2];
    }
    for(int i=0;i<n;i++)
    {
        sum+=(double)t[i+1]/t[i]*flag;
        flag*=-1;
    } 
    printf("%lf",sum);
    return 0;
}

你题目的解答代码如下:

#include<stdio.h>

int main() {
    int n,f=1;
    double sum=0,x=1,y=2,z;
    scanf("%d", &n);
    while (n>0)
    {
        sum += y/x * f;
        z = x+y;
        x = y;
        y = z;
        f = -f;
        n--;
    }
    printf("%lf\n",sum);
    return 0;
}

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img