模拟定积分计算,程序输出为 -nan (gcc编译),请前辈帮助

#include <stdio.h> #include <math.h>

double wjf(double x) { double y=xxxxsqrt((1+x)/(1-x)); return y; }

void main() { double i=0; double s=0;

for(i=0;i<=1;i=i+0.01) { s=s+(wjf(i)+wjf(i+0.01))*0.01/2; } printf("%lf\n",s); }

你这个输出是发生了除0错误,导致输出错误

循环不能到1,否则wjf函数计算中,分母(1-x)为0,就会成为NAN啦