输入的程序怎么结果不对。。。。
#include<stdio.h>main()
{float a,b,c,d,x,y;
scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
x=1;
do{y=a*x*x*x+b*x*x+c*x+d;
x=x-y/(3*a*x*x+2*b*x+c);}
while(y!=0);
printf("%f",x);
getchar();getchar();getchar();getchar();
}
输入2 -4 3 -6后怎么答案出来0.00000?
而下面程序则对:
#include<stdio.h>
main()
{float x,y;int a,b,c,d;
scanf("%d%d%d%d",&a,&b,&c,&d);
x=1.5;
do{y=a*x*x*x+b*x*x+c*x+d;
x=x-y/(3*a*x*x+2*b*x+c);}
while(y!=0);
printf("%f",x);
getchar();getchar();getchar();getchar();
}
输入2 -4 3 -6 答案为2.000000