为什么我的程序输出是4.000000?

请依据下面的公式,编程计算圆周率π的值。当公式的最后一项的绝对值小于n时停止计算。           π/4≈1-1/3+1/5-1/7+……+n  程序运行结果示例: 当公式的最后一项的绝对值小于n时停止计算:0.00006 PI=3.141713  输入提示:"当公式的最后一项的绝对值小于n时停止计算:" 输入格式:"%f" 输出格式:"PI=%lf\n"

 

 

#include <stdio.h>

void main()
{
int m=1;
 float temp;
 float  n;
double    sum=0;
 printf("当公式的最后一项的绝对值小于n时停止计算:");
 scanf("%f",&n);
  do
   {
   temp=1/(2*m-1);
   if(m%2==1)
   sum+=temp;
    else
     sum-=temp;
   m++;
   }while(temp<n);
        printf("PI=%lf\n",sum*4);
        return 0;
}

查看全部
profoundlight
莔U鄕
2020/11/25 22:13
  • c语言
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

1个回复