哪位可以看一下这个C语言代码怎么修改吗?

img

img


是求累加的结果1-1/3+1/5-1/7+1/9-1/11+…一直到第n项…

img

img

img


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

14、18行=两边交换一下位置

img

img

这么写,供参考:

//求累加的结果1-1/3+1/5-1/7+1/9-1/11+…一直到第n项…
#include <stdio.h>
int main()
{
    int    i=1, n;
    double s=0;
    scanf("%d", &n);
    while (i <= n)
    {
        if (i % 2 ==1)
            s += 1.0/(2*i-1);
        else
            s += 1.0/(1-2*i);
        i++;
    }
    printf("%f",s);
    return 0;
}