计算1-1/3+1/5-1/7+……

读入一个正实数eps, 计算并输出1-1/3+1/5-1/7+……,直到最后一项的绝对值小于eps。
例:
输入:1E-4
输出:0.785348
输入:0.1
输出:0.834921


#include <stdio>
#include <math>

int main()
{
    double eps;
    scanf("%lf", &eps);
    double f = 1.0;
    double sum = f;
    int count = 0;
    while(abs(f) >= eps)
    {
        count++;
        f = (count%2==0?1.0:-1.0)/(2.0*count+1);
        sum += f;
    }
    printf("%lf", sum);
    return 0;
}


#include <stdio.h>
#include <math.h>
main()
{ 
    float sum = 0, term = 1,n = 1;   
    int    sign = 1;            
                       
    while (fabs(term) >= 1e-4)     //while后面无';'
    {
        sum = sum + term;           
        sign = -sign;              
        n = n + 2;                 
        term = sign * (1/n);            
    }
     
    printf("sum=%f\n",sum);
}

#include <stdio.h>
int main()
{
    int n=1,flag = 1;
    double item = 0.eps,sum = 0;
    scanf("%e",&eps);
    do
    {
        item = 1.0/n;
        sum += flag * item;
        flag *= -1;
        n+=2;
    }while(item >= eps);
    printf("%lf",sum);
}

供参考:

#include <stdio.h>
#include <math.h>
int main()
{
    int    i;
    double s, eps;
    scanf("%lf", &eps);
    for (i = 1, s = 0; fabs(1.0 / (2 * i - 1)) > eps; i++)
        i % 2 == 1 ? s += 1.0 / (2 * i - 1) : s -= 1.0 / (2 * i - 1);
    printf("s=%f", s);
    return 0;
}