C语言求定积分∫sinxdx,∫cosxdx,∫e^xdx的值
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/8c1b4f57c80ffef61d57e7e5fb488517.png)
- 说明:sin,cos,exp已在系统的数学函数库中,程序开头要用#include<math.h>.
- 代码如下:
#include<stdio.h>
#include<math.h>
float integral(float (*)(float),float,float,int);
float fsin(float);
float fcos(float);
float fexp(float);
int main()
{
float a1,b1,a2,b2,a3,b3,c,(*p)(float);
int n=10;
printf("input a1,b1:");
scanf("%f%f",&a1,&b1);
printf("input a2,b2:");
scanf("%f%f",&a2,&b2);
printf("input a3,b3:");
scanf("%f%f",&a3,&b3);
p=fsin;
c=integral(p,a1,b1,n);
printf("The integral of sin(x) is:%f\n",c);
p=fcos;
c=integral(p,a2,b2,n);
printf("The integral of cos(x) is:%f\n",c);
p=fexp;
c=integral(p,a3,b3,n);
printf("The integral of cos(x) is:%f\n",c);
return 0;
}
float integral(float(*p)(float),float a,float b,int n)
{
int i;
float x,h,s;
h=(b-a)/n;
x=a;
s=0;
for(i=1;i<=n;i++){
x=x+h;
s=s+(*p)(x)*h;
}
return (s);
}
float fsin(float x)
{
return sin(x);
}
float fcos(float x)
{
return cos(x);
}
float fexp(float x)
{
return exp(x);
}
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/c475769f0a8e90587e4e3c05d5ee963e.png)