大家看一下我的程序Dev C++

来源:百度知道 编辑:UC知道 时间:2024/06/06 05:28:36
#include <stdio.h>
#include <math.h>
int main(void)
{
double a,b,c,s,x,y,f;
scanf("%d%d%d",&a,&b,&c);
s=(b*b)-(4*a*c);
if(s>=0)
{
g=b*b-4*a*c;
s= sqrt(g);
printf("%g",s);
x=(-b+s)/(2*a);
y=(-b-s)/(2*a);
printf("X1=%g X2=%g",x,y);
}
else
printf("wu");
}
为什么我在这一句时 g=b*b-4*a*c;
s= sqrt(g);
printf("%g",s); s总输出0啊!!
那位大师说一下....
double a,b,c,s,x,y,g;漏写了一个g,补上后还是错,g输出后也是0.

#include <stdio.h>
#include <math.h>
int main(void) //int型函数应该有返回值巴
{
double a,b,c,s,x,y,f;
scanf("%d%d%d",&a,&b,&c);
s=(b*b)-(4*a*c);
if(s>=0)
{
y=b*b-4*a*c; //不是g巴
s= sqrt(y);
printf("%g",s);
x=(-b+s)/(2*a);
y=(-b-s)/(2*a);
printf("X1=%g X2=%g",x,y);
}
else
printf("wu");
return 0;
}

scanf("%d%d%d",&a,&b,&c); //改成 %lf

#include <stdio.h>
#include <math.h>
int main(void)
{
double a,b,c,s,x,y,f,g;
clrscr();
scanf("%lf,%lf,%lf",&a,&b,&c);
s=b*b-4*a*c;
if(s>=0)
{
g=b*b-4*a*c;
s= sqrt(g);
printf("%lf\n",s);
x=(-b+s)/(2*a);
y=(-b-s)/(2*a);
printf("X1=%lf X2=%lf",x,y);
}
else
printf("wu");
}

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