f1=1+x^2
float f1(float x)
{
return 1+x*x;
}
float Integralf1(float a,float b)
{
float s,h;
int n = 100,i;
s = ( f1(a) + f1(b) )/2;
h= ( b-a ) / n;
for( i=1;i<n;i++ )
{
s + = f1(a+i*h);
}
return s * h;
}
y1=Integralf1(0.0,1.0);
用上指针,通用计算函数的定积分。
float f1(float x)
{
return 1+x*x;
}
float f2(float x)
{
return x/(1+x*x);
}
float Integralf1(float a,float b,float (*p)(float))
{
float s,h;
int n = 100,i;
s = ( (*p)(a) + (*p)(b) )/2;
h= ( b-a ) / n;
for( i=1;i<n;i++ )
{
s + = (*p)(a+i*h);
}
return s * h;
}
y1=Integralf1(0.0,1.0,f1);
y2=Integralf1(0.0,3.0,f2);
本文探讨了如何利用指针在C语言中计算函数的定积分,通过实例展示了如何应用`f1`和`f2`函数,并分别计算了y1和y2。重点介绍了通用计算函数的定义与积分过程,适合理解函数指针在数值计算中的应用。
3万+

被折叠的 条评论
为什么被折叠?



