永发信息网

C语言,有关求定积分#define N 100#includedouble *f(double x){\x09doubl

答案:1  悬赏:40  手机版
解决时间 2021-08-17 23:51
  • 提问者网友:流星是天使的眼泪
  • 2021-08-17 16:16
C语言,有关求定积分
#define N 100
#include
double *f(double x)
{
\x09double a=x*x+x;
\x09double *p=&a;
\x09return p;
}
double intergral(double a,double b,double(*f)(double))
{
\x09double h=(b-a)/N,S=0;
\x09int i;
\x09for(i=0;i
最佳答案
  • 五星知识达人网友:第四晚心情
  • 2021-08-17 17:24

要学会看错误提示double intergral(double a,double b,double(*f)(double))
这个函数的第三个参数你传错了第三个参数是一个函数的指针,这个函数的返回值类型是double参数类型是double而你传的f函数,他的返回值类型是double *不是double 所以报你第三个参数传错了,实际上就是你的f函数写错了,改下就行了:double f(double x)
{
double a=x*x+x;
return a;
}#include<stdio.h>
double f(double x)
{
double a=x*x+x;
return a;
}
double intergral(double a,double b,double(*f)(double))
{
double h=(b-a)/N,S=0;
int i;
for(i=0;i<N;i++)
S=S+f(a+i*h)+f(a+(i+1)*h);
S=S*h/2;
return S;
}
void main()
{
double sum;
sum=intergral(1,3,f);
printf("%lf",sum);
}


名师点评:


asct622

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯