算圆周率。我输入之后 没输出啊。空的。求大神C语言

算圆周率。我输入之后 没输出啊。空的。求大神C语言

你这个for循环我不知道你怎么写的,有语法错误吧?这是我以前写的,用的是公式:
Pi=1-1/2+1/4-1/6+1/8+……C语言代码如下:
#include<stdio.h>
void main()
{
int i,j=1;
double pi=0;
for(i=1;i<1e8;i=i+2) /*这里的精度自己取*/
{
pi=pi+j*(1.0/i);
j=-j;
}
pi=pi*4;
printf("%lf\n",pi);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-03-10
循环条件是c>=d,就是说c比d小的时候才跳出
但是你这个程序d没有变,但是c是一直增大的。。如果不是一开始c比d小的话,c是永远不会比d小的。。。于是陷在for里面了
第2个回答  2014-03-09
pow(x,y)函数,其中x不能为负数

算圆周率。我输入之后 没输出啊。空的。求大神C语言
你这个for循环我不知道你怎么写的,有语法错误吧?这是我以前写的,用的是公式:Pi=1-1\/2+1\/4-1\/6+1\/8+……C语言代码如下:include<stdio.h> void main(){ int i,j=1;double pi=0;for(i=1;i<1e8;i=i+2) \/*这里的精度自己取*\/ { pi=pi+j*(1.0\/i);j=-j;} pi=pi*4...

C语言计算圆周率,为什么得不到想要的结果,求大神帮助
上面的修改应该就是你想表达的思路了,但是结果却不是正确的因为你想当然的认为pi-r<=eps了结果的精度就是eps但2n\/(2n-1)

输入圆的半径,c语言求圆的面积并显不出来
思路:宏定义圆周率PI=3.14,键盘输入半径r,计算PI*r*r,并输出。参考代码:include <stdio.h>#define PI 3.14int main(){float r,s;scanf("%f",&r);s=r*r*PI;printf("S=%.2f",s);return 0;}\/*运行结果:10S=314.00*\/

用C语言写出计算圆周率的程序
double pi = 0;\/\/圆周率 double d=200;\/\/直径(值越大圆周率越精确)double r = d\/2;\/\/半径 for(int i=1;i<=d;i++){ for(int j=1;j<=d;j++){ if((i-r)*(i-r)+(j-r)*(j-r)<=r*r){ s++;} } } pi = s\/(r*r);...

C语言求π的值,输入之后不能正常运行,求大侠帮忙
在C语言下是不能这么写的,^符号的含义被解释成异或运算,而不是幂运算,所以正确的写法应该是在Main中定义一个变量,每一次循环的时候将变量乘以-1 另外你用的这个级数表达式收敛的非常慢,要运行的次数非常多,最好才用圆周率的反正切表达式或韦达的圆周率计算式,那样会收敛要快得多。void main(){...

C语言计算圆周率
include <stdio.h>double fact(int n) { double res = 1.0; for(int i = 1; i <= n; i++) res *= i; return res; }double multi(int n) { double res = 1.0; for(int i = 1; i <= n; i += 2) res *= i; return res; }int main()...

用C语言求圆周率
include <stdio.h> void main(){ double pi=3.00, t=0.00, s=0.00;int i=1, j=1;scanf("%f", &t); \/\/输入精度控制值 do { s =4.00\/((2*i)*(2*i+1)*(2*i+2));pi+= j*s;i ++;j *=-1; \/\/符号控制 }while(s >=t);printf("%f\\n", pi);} ...

用c语言计算圆周率
include<math.h> main(){ float pi=0,t=1;int i=1;do { t=1\/(float)(2*i-1);if(i%2==0) t=-t; \/*printf("%d ",t);*\/ pi+=t;i++;}while(fabs(t)>0.00001);printf("pi=%f\\n",4*pi);getch();}

C语言计算圆周率出错,求大神帮忙!
s=s+cifang((-1),(k+1))*(1.0\/i); \/\/此处要用1.0 因为默认的i是int型,1也是int型,所以这里两个int型数据计算结果也是int型,也就是永远是0

用C语言编写一个求圆周率的程序
楼上的那个 i<400这个400改成更大的数精确度会高点,还有printf后改成%.50lf\\n可以算到小数点后50位,这个50也是可以改的。外加一句,一般电脑很难算到50位

相似回答
大家正在搜