c语言梯形法求定积分~~求大虾指教错在哪~~~

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

float f(float x)
{
return pow((4-x*x),0.5);
}

main()
{
int i,n;
float a,b,t,s=0;
scanf("%f,%f",&a,&b);
t=(b-a)/n;
for(i=0;i<n;i++)
{
s=s+t*f(a+i*t);
}
printf("%f",s);

}

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

float f(float x)
{
return sqrt(4-x*x);//求的是sqrt(4-x*x)的定积分,因此下面输入的端点值应该是有范围要求的必须保证4-x*x>=0因为有个开根号
}

main()
{
int i,n=100;
float t,s=0;
int a,b;
scanf("%d %d",&a,&b);//求定积分一般情况端点值是整数就可以了
t=(b-a)*1.0/n;//这里,n 是多少啊?没有初始化
for(i=0;i<n;i++)
{
s=s+t*f(a+i*t);
}
printf("%f",s);

}
温馨提示:答案为网友推荐,仅供参考