#include<stdio.h>
#include<math.h>
int main()
{
int sign=1;
double Sum=0.0,e=1.0, i=1.0;
while(fabs(e)>=1e-6)
{
Sum=Sum+e;
sign=-sign;
i+=2;
e=sign/i;
}
Sum=Sum*4;
printf("%lf\n",Sum);
return 0;
}
#include<math.h>
int main()
{
int sign=1;
double Sum=0.0,e=1.0, i=1.0;
while(fabs(e)>=1e-6)
{
Sum=Sum+e;
sign=-sign;
i+=2;
e=sign/i;
}
Sum=Sum*4;
printf("%lf\n",Sum);
return 0;
}
问一个简单的程序啊,为什么这段代码里面当i=1.0放到double那一行的时候程序能运行,但是放到int那一行的时候就得到一个错误结果?