这道题怎么做,哪位帮看下

这道题怎么做,哪位帮看下

问题描述:

img

         有一分数序列:2/13 13/821/13.求出 3/25/38/5
         这个数列的前n项之和的整数部分
           n的值运行时通过键盘输入给定,并且n<=3e。
          输出值只保留整数(不要四舍五入)
           效果如下:
           输入:20。
           输出:32。

供参考:

#include<stdio.h>
int main()
{
    int n, i, k = 1, m = 2, t;
    double sum = 0;
    scanf("%d", &n);
    if (n > 30) return 1;
    for (i = 1; i <= n; i++)
    {
        sum += 1.0 * m / k;
        t = m;
        m = m + k;
        k = t;
    }
    printf("%d\n", (int)sum);
    return 0;
}

#include <stdio.h>
#define N 30
int main()
{
int i,n;
int a[N],b[N];
float sum=0;
a[0]=1;a[1]=2;
b[0]=2;b[1]=3;
scanf("%d",&n);
if(n==1) sum=2;
else if(n==2) sum = 2/1+3/2.0;
else{
sum = 2/1+3/2.0;
for(i=2;i<n;i++)
{
a[i] = a[i-1]+a[i-2];
b[i]=b[i-1]+b[i-2];
sum += 1.0* b[i]/a[i];
}
}
printf("%d",(int)sum);
return 0;
}