您的位置:首页 > 其它

函数指针的例子(自己的作业)

2011-05-10 09:02 197 查看
#include<stdio.h>
#include<stdlib.h>
typedef double (* INTEGRAL)(double);
double integral_1(double x)
{
double y;
y = x*x/2 + x*x*x/3;
return y;
}
double integral_2(double x)
{
double y;
y = 3*x*x/2 + 2*x*x*x/3;
return y;
}
double integral_e(double x)
{
double e = 2.7182;
double y = 1;
int i;
for(i = 0; i < (int)x-1; ++i)
y *= e ;
return (y+x);
}
double integral(double a, double b, double (*f)(double))
{
return ((*f)(b)-(*f)(a));
}
void main()
{
double a;
double b;
int choose;
double result;
INTEGRAL inte[] = {integral_1,integral_2,integral_e};
printf("请输入您要求积分的上界:/n");
//double类型值的输入用"%lf"或者"%le"
scanf("%lf",&b);
printf("请输入您要求积分的下界:/n");
fflush(stdin);
scanf("%lf",&a);
printf("请输入计算方法(0-2):/n");
fflush(stdin);
scanf("%d",&choose);
result = integral(a,b,inte[choose]);
printf("结果为:%7.7f",result);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: