C语言计算PI的值,保留到小数点后六位

刚刚一位高中同桌(女生)问我你是学的计算机科学与技术专业的是吧,我说:昂。
然后她就给我发了她写的一段代码,问题很简单就是计算PI的值。结果正确,但是题库端给她的结果是运行超时,这个就是她写的。
#include <stdio.h>
#include <math.h>
int main
{
double n,i,j,PI;
j=1;
n=0;
for(i=1,j=2;1/i>=1e-8;i=i+2,j=j+1)
{
n=n+1/ipow(-1,j);/这应该是她想改变正负号/
}
PI=4
n;
printf("%.6",PI);
return 0;
}
求大佬们能解释一下为啥会超时
然后下面这段是我用while循环写的,这个并没有超时。
#include <stdio.h>
#include <math.h>
int main()
{
double n=1,i=1.0,j=1,PI;
while(fabs(i)>=1e-8)
{
PI+=i;
j+=2;
n=-n;
i=n/j;
}
PI=4*PI;
printf("%.6f",PI);
return 0;
}@TOC

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值