修改如下,供参考:
#include <stdio.h>
#include <math.h>
int main()
{
int i = 1;
double p = 0, e, t=1.0;
scanf("%lf", &e);
for (i = 1; fabs(t) >= e; i++)
{
t = pow(-1, i + 1) / (2 * i - 1);
p += t;
}
printf("Pi = %.4lf", 4.0 * p);
return 0;
}
(1/(2*i-1))是整除,结果是0啊。改为1.0/( 2 * i - 1)