Wangx_wang 2023-10-17 23:36 采纳率: 85.7%
浏览 21
已结题

C语言-计算π的近似值

求π的近似值,直到发现某一项的绝对值小于10的-6次为止(该项不累加)。输出时保留8位小数。

img

输出:PI:3.14159065
我这里这样做为什么是错的?

#include <stdio.h>
int main()
{
    float n = 1.0, x=0;
    int i;
    for (i = 1; i <1e+6; i += 2)
    {
        x = x+(n*1.0 / i);
        n=-n;
    }
    printf("PI:%.8f", x*4);
    return 0;
}

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-10-17 23:45
    关注
    #include <stdio.h>
    #include <math.h>
    int main()
    {
        float n = 1.0, x=0;
        int i;
        for (i = 1; fabs(n*1.0 / i) > 1e-6; i += 2)
        {
            x = x+(n*1.0 / i);
            n=-n;
        }
        printf("PI:%.8f", x*4);
        return 0;
    }
     
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月19日
  • 已采纳回答 11月11日
  • 创建了问题 10月17日