通过函数指针的方式对5个不定积分函数球值,但编译的时候通不过。

来源:百度知道 编辑:UC知道 时间:2024/06/06 02:50:30
#include<math.h>
main()
{float f1(float,float );
float f2(float,float );
float f3(float,float );
float f4(float,float );
float f5(float,float );
float a,b;
printf("Enter lowwer limit a and upper limit b: ");
scanf("%f,%f",&a,&b);
printf("f1=");
process(a,b,f1);
printf("f2=");
process(a,b,f2);
printf("f3=");
process(a,b,f3);
printf("f4=");
process(a,b,f4);
printf("f5=");
process(a,b,f5);
}
float f1(float a,float b)
{float c;
c=b*b/2+b*b*b/3-a*a/2-a*a*a/3;
return(c);
}
float f2(float a,float b)
{float c;
c=2*b*b*b/3+3*b*b/2-2*a*a*a/3-3*a*a/2;
return(c);
}
float f3(float a,float b)
{float c;
c=exp(b)+b-exp(a)-a;
return(c);
}
float f4(float a,float b)
{float c;
c=b*b*b/3+b*b+b-a*a*a/3-a*a-a;
return

你少了process的声明了,如下:
main()
{
float process(float,float,float (*)(float,float));

另外,不知道你用的是什么系统,在我的*BSD系统下编译程序,需要如下:
gcc -o main -lm main.c 来指定math库才能编译过去
如果是win下的编译器,也许不是这么麻烦吧,但是少一个声明却是肯定的