为什么无法输出正确答案


#include <stdio.h>
int main()
{int n,i;
float sum,a;
 scanf("%d",&n);
 sum=0;
 for(i=1;i<=n;i++){

    if(i%2!=0){

    a=(1/i);}
 else if(i%2==0)
    {
    a=(-1/i);}

   sum=sum+a;
 }

printf("%.3f",sum);

    return 0;
}

img

#include <stdio.h>
int main() {
    int n,i;
    float sum=0,a;
    scanf("%d",&n);
    sum=0;
    for(i=1; i<=2*n-1; i+=2) {
        a=(1.0/i);
        sum=sum+a;
    }
    printf("%.3f",sum);
    return 0;
}

觉得有用的话采纳一下哈