C语言实现求定积分的方法
本文实例讲述了C语言实现求定积分的方法。分享给大家供大家参考。具体实现方法如下:
#include<cmath> #include<cstdio>
#defineACC1000
floatsolve(float(*p)(float),floatup,floatdown,intacc); floatfun_exp(floatx); floatfun_qua(floatx);
voidmain(){
charselection; floatup,down;
while(printf("请选择被积函数:\n"),printf("1、exp(x) 2、x+1\n"),scanf("%c",&selection),selection!='#'){ printf("请输入积分上下限:"); scanf("%f,%f",&up,&down);
switch(selection){ case'1': printf("结果是:%4.4f\n",solve(fun_exp,up,down,ACC)); break; case'2': printf("结果是:%4.4f\n",solve(fun_qua,up,down,ACC)); break; } } }
floatsolve(float(*p)(float),floatup,floatdown,intacc){ floatsum,base,area; area=0; sum=0; base=(up-down)/acc;
for(inti=0;i area=base*((*p)(down+i*base)); sum+=area; } returnsum; } floatfun_exp(floatx){ returnexp(x); } floatfun_qua(floatx){//一元二次方程quadratics returnx+1; }