首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

为啥这代码不能得到圆周率的值,人家说这是求圆周率的代码啊

2013-06-26 
为什么这代码不能得到圆周率的值,人家说这是求圆周率的代码啊?#include stdio.hdouble pi(double eps){d

为什么这代码不能得到圆周率的值,人家说这是求圆周率的代码啊?
#include <stdio.h>

double pi(double eps)
{
double s=0.0,t=1.0;int n;

for (n=1;t>eps;n++)
{
s+=t;t=t*n/(2*n+1);
return (2.0*s);
}
}
void main()
{
    printf("%f",pi(0.000001));
}
为什么这代码不能得到圆周率的值,人家说这是求圆周率的代码啊?
[解决办法]
return语句误写入for循环中了:


#include <stdio.h>

double pi(double eps)
{
double s=0.0,t=1.0;int n;

for (n=1;t>eps;n++)
{
s+=t;t=t*n/(2*n+1);
}
return (2.0*s);
}
int main(void)
{
    printf("%f",pi(0.000001));
    return 0;
}

热点排行