3.已知3π=1-1/3+1/5-17…,编程求圆周率 ,要求精度大于e

(本题简单理解为若通项大于e则加,否则认为精度符合要求循环结束),e从键盘上输入,如0.001#include<stdio.h>intmain(){floati,k,e,... (本题简单理解为若通项大于e则加,否则认为精度符合要求循环结束),e从键盘上输入,如0.001
#include<stdio.h>
int main()
{
float i,k,e,a,b,s=0,s1=0;
scanf("%f",&e);
for(i=1;i<=1000;i=i+2)
{
a=i*2+1;
break if(1/a>e)
{
s=s-1/a;
}
}
for(k=1;k<=1000;k=k+1)
{
b=k*4+1;
break if(1/b>e)
{
s1=s1+1/b;
}
}
printf("%.5f\n",1+s+s1);
}
怎么改啊啊啊啊啊啊啊啊啊啊,求助qaq
c语言
展开
 我来答
White_MouseYBZ
2017-04-02 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6704万
展开全部

你的代码有点胡写,那个级数也不是3π而是π/4。所以就不改了;提供一个供参考……

#include <stdio.h>
int main(int argc,char *argv[]){
    double s,t,e;
    int i;
    printf("Input e(R: e>0)...\ne=");
    if(scanf("%lf",&e)!=1 || e<=0){
        printf("Input error, exit...\n");
        return 0;
    }
    for(s=0,t=i=1;t>e;i+=2){
        t=1.0/i;
        s += (i+1)%4 ? t : -t;
    }
    printf("π≈%.5f\n",s*4);
    return 0;
}
ooeasydu
2017-04-02 · TA获得超过1.5万个赞
知道大有可为答主
回答量:2.6万
采纳率:7%
帮助的人:1256万
展开全部
真那么大家
追问
在说什么啊,qaq
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式