帮我看看哪里错了
#include <stdio.h>#include <math.h>
int main(){
double f=1;
double a=1,b,c,eps,S=0;
scanf("%lf",&eps);
c=1; b=1;
while(b>eps){
S+=a;
c+=3;
f=-f;
a=f/c;
b=fabs(a);
}
printf("%.6f",S);
return 0;
} 本帖最后由 jackz007 于 2020-11-6 15:29 编辑
我给楼主整理了一下:
#include <stdio.h>
int main()
{
double c = 1 , f = 1 , S = 1 , eps ;
scanf("%lf" , & eps) ;
while(1.0 / c > eps) {
c += 3 ;
f = - f ;
S += f * 1.0 / c ;
}
printf("%.6f\n" , S) ;
} 把循环条件的运算符 > 改为 >= 代码正确的啊,你显示哪里错??
sunrise085 发表于 2020-11-6 13:10
把循环条件的运算符 > 改为 >=
还是不对。。。 清班长来学C 发表于 2020-11-6 13:19
代码正确的啊,你显示哪里错??
输入4E-2 我得到的是0.81
PTA上的答案是0.85 jackz007 发表于 2020-11-6 15:04
我给楼主整理了一下:
谢谢dalao 同问大佬 天神下饭... 发表于 2020-11-6 19:40
输入4E-2 我得到的是0.81
PTA上的答案是0.85
我输出是正确的。。。。
页:
[1]