作业帮 > 综合 > 作业

b编写函数.计算二次多项式f(x)=ax²+x+c的值,对于给定的系数a、b、c和x的一个区间,以0.1为x的

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/28 22:07:08
b编写函数.计算二次多项式f(x)=ax²+x+c的值,对于给定的系数a、b、c和x的一个区间,以0.1为x的步长
f(x)的值,找出f(x)=0的解及f(x)的极大(小)值.
我写的程序,如下:
#include
#include
void fun(float x);
main()
{
int a,b,c;
float x,MAX,MIN;
printf("abcdezhi:");
scanf("%d,%d,%d",&a,&b,&c);
printf("xdequjian");
scanf("%f,%f",&MAX,&MIN);
fun(x);
}
void fun(float x)
{
int a,b,c,i;
float f,MAX,MIN;
float y[2];
f=a*x*x+b*x+c;
for(i=MIN;i0)
{
y[0]=(-b+sqrt(b*b-4*a*c))/2*a;
y[1]=(-b-sqrt(b*b-4*a*c))/2*a;
if(y[0]>MIN&&y[0]MIN&&y[1]
i的数据类型是int,你用i+0.1的数据类型不是int,赋值给i又转化为int,那么i+=0.1,i值一直没有变化.
建议把i改为float