c语言求函数的定积分,C语言求定积分

用C语言求定积分

实际问题描述:

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比民勤网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式民勤网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖民勤地区。费用合理售后完善,10年实体公司更值得信赖。

求定积分近似值

程序代码如下:

#include

#include

void main()

{

int i,n=1000;

float a,b,h,t1,t2,s1,s2,x;

printf("请输入积分限a,b:");

scanf("%f,%f",a,b);

h=(b-a)/n;

for(s1=0,s2=0,i=1;i=n;i++)

{

x=a+(i-1)*h;

t1=(float)exp(-x*x/2);t2(float)=exp(-(x+h)*(x+h)/2);

s1=s1+t1*h;        /*矩形面积累加*/

s2=s2+(t1+t2)*h/2;        /*梯形面积累加*/

}

printf("矩形法算得积分值:%f.\n",s1);

printf("梯形法算得积分值:%f.\n",s2);

}

程序运行结果如下:

矩形法算得积分值:0.855821

梯形法算得积分值:0.855624

由上面的比较可知,梯形法的精度要高于矩形法。

用c语言求定积分

#include

#include

double integral(double(*fun)(double x),double a,double b,int,n){

double s,h,y;

int i;

s=(fun(a)+fun(b))/2;

h=(b-a)/n; /*积分步长*/

for(i=1;in;i++)

s=s+fun(a+i*h);

y=s*h;

return y;/*返回积分值*/

}

double f(double x){

return(x*sinx) /*修改此处可以改变被积函数*/

}

int main(){

double y;

y=integral(f,1.0,2.0,150);/*修改此处可以改变积分上下限和步数,步长=(上限-下限)/步数*/

printf("y=%f\n",y);

return 0;

}

int main()

用C语言编写一个求定积分的程序,用它分别求以下5个函数的定积分:

#includestdio.h

#includemath.h

float f1(float x)

{

return(1.0+x);

}

float f2(float x)

{

return(2.0*x+3.0);

}

float f3(float x)

{

return(exp(x)+1);

}

float f4(float x)

{

return(pow(1+x,2));

}

float f5(float x)

{

return(pow(x,3));

}

float fsimp(float a,float b,float (*p)(float))

{

float c,s;

c=(a+b)/2;

s=(b-a)/6*(p(a)+4*p(c)+p(b));

return s;

}

int main()

{

float a,b;

printf("请输入积分下限a的值:");

scanf("%f",a);

printf("请输入积分上限b的值:");

scanf("%f",b);

printf("%f\n",fsimp(a,b,f1));

printf("%f\n",fsimp(a,b,f2));

printf("%f\n",fsimp(a,b,f3));

printf("%f\n",fsimp(a,b,f4));

printf("%f\n",fsimp(a,b,f5));

}

分享标题:c语言求函数的定积分,C语言求定积分
URL链接:https://www.cdcxhl.com/article40/dsiopeo.html

成都网站建设公司_创新互联,为您提供虚拟主机品牌网站设计营销型网站建设网页设计公司手机网站建设网站设计公司

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都做网站