#include <stdio.h>
#include <math.h>
double cal(double a, double b, double (*f)(double));
double Fun(double x);
int main()
{
printf("%f", cal(0, 1, Fun));
}
double Fun(double x)
{
return 2 * x;
}
/*函数功能:求积分
参数:a,b,f(x)
返回值:double*/
double cal(double a, double b, double (*f)(double))
{
double len = (b-a) / 1000;
double s = 0;
for (int i = 0; i < 1000; i++)
{
s += ((*f)(a + len * i) + (*f)(a + len * (i + 1))) * len / 2;
}
return s;
}