2个回答
展开全部
放到后面,应为执行完for下面的大括号才执行 这句 n=n+2
严格按照你列出来的等式,每执行一次for循环体进行一次算术运算,改成下面这样就可以了
#include <stdio.h>
#include <math.h>
int main()
{
int s;
double t,n,pi;
s=-1,t=1,n=1.0,pi=0;
for(t=1;fabs(t)>=1e-6;n=n+2)
{
s=-s;
t=s/n;
pi=pi+t;
}
pi=pi*4;
printf("%.6f\n",pi);
return 0;
}
严格按照你列出来的等式,每执行一次for循环体进行一次算术运算,改成下面这样就可以了
#include <stdio.h>
#include <math.h>
int main()
{
int s;
double t,n,pi;
s=-1,t=1,n=1.0,pi=0;
for(t=1;fabs(t)>=1e-6;n=n+2)
{
s=-s;
t=s/n;
pi=pi+t;
}
pi=pi*4;
printf("%.6f\n",pi);
return 0;
}
展开全部
#include<stdio.h>
int main()
{
double pi=0,b;
int i,a=1,j=1;
b=1.0/a;
while(b>=1e-6)
{
if(j)
{
pi+=b;
j=0;
}
else
{
pi-=b;
j=1;
}
a+=2;
b=1.0/a;
}
printf("%lf\n",pi*4);
}
程序跑的有点慢, 运行之后等一下就好了0。0
10*6有点大了。
int main()
{
double pi=0,b;
int i,a=1,j=1;
b=1.0/a;
while(b>=1e-6)
{
if(j)
{
pi+=b;
j=0;
}
else
{
pi-=b;
j=1;
}
a+=2;
b=1.0/a;
}
printf("%lf\n",pi*4);
}
程序跑的有点慢, 运行之后等一下就好了0。0
10*6有点大了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询