指向函数的指针,梯形法求定积分

Andy818 发布于 2013/08/09 17:40
阅读 218
收藏 0
#include<stdio.h>
#include<math.h>


int main(void)
{  
double sin(),cos(),(*pt)();
    double a=0.0,b=1.0;
pt=sin;
integral(pt,a,b);
pt=cos;
integral(pt,a,b);
return 0;
}
void integral((*fun)( ),double a,double b)
{
double s,h,y;
int n,i;
s=((*fun)(a)+(*fun)(b))/2.0;
n=100;
h=(b-a)/n;
for(i=0;i<n;i++)
s=s+(*fun)(a+i*h);
y=s*h;
printf("%8.2lf\n",y);
}
加载中
0
xue777hua
xue777hua

下面的 integral 定义用这个 

void integral(double (*fun)(), double a, double b) 

0
xue777hua
xue777hua

这是结果:

    0.46
    0.85


返回顶部
顶部