写一个用矩形法求定积分的通用函数 分别求:

2016-06-19 17:00:32  分类: c程序设计第四版谭浩强课后答案  参与:

 写一个用矩形法求定积分的通用函数 分别求:

说明:sina,cos,exp 函数已在系统的数学函数库中,程序开头要用#indlude<math.h>

c程序设计(第四版)学习辅导 谭浩强 编著
以下是此题的【c源代码】,需要【c++源代码】请点击进入

#include<stdio.h>
#include<math.h>
int main()
{float integral(float(*)(float),float,float,int);//对integarl函数的声明
float fsin(float);          //对fsin函数的声明
float fcos(float);          //对fcos函数的声明
float fexp(float);          //对fexp函数的声明
float a1,b1,a2,b2,a3,b3,c,(*p)(float);
int n=20;
printf("input a1,b1:");
scanf("%f,%f",&a1,&b1);
printf("input a2,b2:");
scanf("%f,%f",&a2,&b2);
printf("input a3,b3:");
scanf("%f,%f",&a3,&b3);
p=fsin;
c=integral(p,a1,b1,n);
printf("The integral of sin(x) is:%f\n",c);
p=fcos;
c=integral(p,a2,b2,n);
printf("The integral of cos(x) is:%f\n",c);
p=fexp;
c=integral(p,a3,b3,n);
printf("The integral of exp(x) is:%f\n",c);
return 0;
}

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);}

 

来源:c程序设计第四版谭浩强课后答案

本文链接:http://www.wb98.com/c/post/tanhaoqiang_8.13.html

本站文章搜索:

<< 上一篇下一篇 >>

搜索

网站分类

Tags列表

赞助商链接