这题看了别人的代码之后,再看看自己的代码,觉得太离谱了,写了一个大循环,里面两个小循环…之前有做过类似的题,不知道是不是我搞混了T-T
#includeint main() { double n,a=1,b=1,s; double sum=1; int i; scanf("%lf",&n); s=a/b; for(i=1;s>=n;i++){ a=a*i; b=b*(i*2+1); s=1.0*a/b; sum=sum+s; } printf("%6lf",2*sum); return 0; }
i=1是从1/3开始的,i代表相数,把式子的第二项看成第一项,式子的第一项直接放sum里
for(i=1;s>=n;i++){
这步把每一项的值和阈值比较,放在循环的条件里,是我没想到的。
菜啊T-T


![[PTA]7-116 计算圆周率(c语言)(学习记录) [PTA]7-116 计算圆周率(c语言)(学习记录)](http://www.mshxw.com/aiimages/31/968699.png)
