C语言 用矩形法计算定积分∫(0—1)sinxdx∫(-1—1)cosxdx∫(0—2)e^xdx
Posted C语言大本营
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 用矩形法计算定积分∫(0—1)sinxdx∫(-1—1)cosxdx∫(0—2)e^xdx相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
#include <math.h>
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);
int main()
float a1,b1,a2,b2,a3,b3,c,(*p)(float);
int n=20;
printf("input a1,b1:");
scanf("%f,%f",&a1,&b1); //输入求sinx定积分的上限和下限
printf("input a2,b2:");
scanf("%f,%f",&a2,&b2); //输入求cosx定积分的上限和下限
printf("input a3,b3:");
scanf("%f,%f",&a3,&b3); //输入求e的x次方定积分的上限和下限
p=fsin; //使p指向fsin函数
c=integral(p,a1,b1,n); //求出sinx的定积分
printf("The integral of sin(x) is:%f\\n",c);
p=fcos; //使p指向fcos函数
c=integral(p,a2,b2,n); //求出cosx的定积分
printf("The integral of cos(x) is:%f\\n",c);
p=fexp; //使p指向fexp函数
c=integral(p,a3,b3,n); //求出e的x次方的定积分
printf("The integral of exp(x) is:%f\\n",c);
return 0;
以上是关于C语言 用矩形法计算定积分∫(0—1)sinxdx∫(-1—1)cosxdx∫(0—2)e^xdx的主要内容,如果未能解决你的问题,请参考以下文章