北马兜铃 发表于 2019-1-15 22:19:15

C语言基础

#include<stdio.h>
void main()
{
    float PI,b=1.0,c=0;
    int i=1;

   for(i;i<=10; i++)
    {
      b=i/(i+2);
      if(i%2==0)
      {
      b=-b;
      }
    }
          c=c+b;
          PI=4*c;


    printf("PI=%6f\n",PI);
}
问下大家错在哪里啦?   用π/4 ≈ 1-1/3+1/5-1/7+…公式求π的近似值,直到某一项的绝对值小于为止。
{:5_109:}
老师是这样写的
#include <stdio.h>
#include<math.h>
void main()
{
    int s;   
float n,t,pi;    
t=1;pi=0;   n=1.0;    s=1;    
while( fabs(t) > 1e-6 )
{
        pi = pi+t;   n = n+2;    s = -s;    t = s/n;
   }    
pi = pi*4;
   printf(″pi=%10.6f\n″,pi);
}

BngThea 发表于 2019-1-16 08:49:16

本帖最后由 BngThea 于 2019-1-16 08:50 编辑

i定义为int
i/(i+2)为0

北马兜铃 发表于 2019-1-17 14:21:53

麻烦能不能说具体点呀?我没懂{:10_254:}

不自律的笨鸟 发表于 2021-5-15 04:11:29

看来还有很多东西要学习啊!
页: [1]
查看完整版本: C语言基础