输出的答案正确,但提交时一直有一个错误,谁能指点指点!

img


#include<stdio.h>
#include<math.h>
int main()
{
    int i,fm=1;
    double sum=0;
    double item,eps;
    int flag=-1;
    scanf("%lf",&eps);
    for(i=1;fabs(1.0/(2*(i-1-1))>=eps;i++)
    {   fm=2*i-1;
        flag*=-1;
        item=flag*1.0/fm;
        sum+=item;
        
    }
    printf("Pi = %.4lf\n",sum*4);
    return 0;
}

最后printf中的 \n去掉,题目要求最后无空行

#include <iostream>
#include <vector>
using namespace std;
double funpi(double e){
    double pi=0,fenmu=1,sign=1;
    do{
        pi=pi+sign/fenmu;
        fenmu+=2;
        sign=sign*(-1.0); 
    }while(1/(fenmu-2)>=e);
    return pi;
} 
int main() {
    double e;
    scanf("%lf",&e);
    printf("Pi = %.4lf",4*funpi(e));
    return 0;
}

用long double

for(i=1;fabs(1.0/(2*(i-1-1))>=eps;i++
改成
for(i=1;fabs(1.0/(2*i-1)>=eps;i++)