#include <
stdio.h>
#include <math.h>
#include <time.h>
int main()
{
int n = 0;
double x, y = 0.0, result = 0.0, a, b;
printf("请输入积分区间 a,b:");
scanf("[%lf,%lf]",&a,&b);
clock();
for(x = a ; x <= b ; x += 1E-7) //这里可调控结果精度
{
y += (x*x*asin(x)+1)/sqrt(1-x*x) ;//这里可任意修改为自己需要的积分方程
n++;
}
result = ( (b-a)/n ) * y;
printf("y = (x*x*asin(x)+1)/sqrt(1-x*x) 在积分区间[%.2lf,%.2lf]上的结果为:%.7lf\n运行时间:%.4f s\n",a,b,result,(double)clock()/CLOCKS_PER_SEC);
return 0;
}
基本上普通的积分都能求,就是算法并不好(就是最基本的矩形法求和,也称黎曼求和),循环次数太多耗时