永发信息网

C语言,求exp(x)从0到1的积分。

答案:1  悬赏:80  手机版
解决时间 2021-04-29 11:08
  • 提问者网友:杀生予夺
  • 2021-04-28 15:02

#include<stdio.h>
#include<math.h>
void main()
{
float integrate(float,float,float (*function)(float));
float s;
s=integrate(0,1,exp); f
printf("%f",s);
system("pause");
}
float integrate(float a,float b,float (*function)(float))
{
int i=1000,j;
float m,sum=0;
m=(b-a)/i;
for(j=0;j<i;j++)
{
a+=m;
sum+=(*function)(a);
}
return sum;
}

电脑显示函数类型不匹配,请问问题在哪?

最佳答案
  • 五星知识达人网友:独钓一江月
  • 2021-04-28 16:28
#include <math.h>
double exp ( double x );
float expf ( float x );
long double expl ( long double x );

float类型要用expf

#include<stdio.h>
#include<math.h>
#include<stdlib.h>

void main()
{
float integrate(float,float,float (*function)(float));

float s;
s=integrate(0,1,expf);
printf("%f",s);
system("pause");
}

float integrate(float a,float b,float (*function)(float))
{
int i=1000,j;
float m,sum=0;
m=(b-a)/i;
for(j=0;j<i;j++)
{
a+=m;
sum+=(*function)(a);
}
return sum;
}



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