怎么用C语言表示积分

怎么用C语言表示积分,第1张

源代码如下:

#include#includefloat 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))

}

扩展资料

1、对应于一个积分式要有一段程序,弊脊做可以改变程序的一小部分来改变所要求的积分式野猜。

2、除数不能位0。

3、租衡两个整数相除,结果仍是整数。

4、若被除数其中有一个为浮点数或者两个都为浮点数,则结果为浮点类型。 *** 作数必须为整数,不能是浮点数。

//还是给你写个简单或斗的吧

#include<没团孙枯链stdio.h>

#include <math.h>

double Int(double a,double b,double d)

{

double x=a,y,sum=0

while (x<=b)

{

y=x*x*exp(x)

sum+=d*y

x+=d

}

return sum

}

void main()

{

double a=0,b=1,d=0.001

printf("%lf\n",Int(a,b,d))

}

下面的代码就是对1/(1+x^2)  求积分,用的是按梯形微森缓分 计算的竖春烂

步长为10000

代码如下:

#include<stdio.h>

#define STEP 10000

double f(double x)

{

return 1.0/(1+x*x)

}

void main()

{

double a,b,x1,x2,area=0,h

scanf("%lf%lf",&a,&b)

h=(b-a)/STEP

x1=a

x2=a+h

while(x2<=b)

{

area+=h*(f(x1)+f(x2))/2

x1=x2

x2+=h

}

printf("余漏%lf\n",area)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12379894.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存