这是一个计算函数f(x)的积分程序
在这里。。函数是f(x)=x^2
int main()
{
float integral;
float a=0,b=0;
int n=1024;
float h;
float x;
int i;
float f(float x);
printf("Enter a, b \n");
scanf("%f %f" , &a, &b);
printf("Enter n\n");
scanf("%d" , &n);
h=(b-a)/n;
integral = (f(a)+f(b))/2;
x=a;
for (i = 0; i <= n-1; n++)
{
x = x + h;
integral = integral + f(x);
}
integral = integral * h ;
printf("with n = %d trapezoids, our esrimate\n", n );
printf("of the integral from %f to %f = %f\n", a , b , integral);
system("pause");
return 0;
}
float f(float x)
{
return x*x;
}
n的输出总是垃圾。。我不知道为什么
我错在哪里??
这个问题很愚蠢
但是我真的很累找错了
最佳答案
这是您的错误:for (i = 0; i <= n-1; n++)
。你增加n
而不是i
。
关于c - 总是在整数变量中垃圾,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10719002/