该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
void GetCoefficients(int *aptr, int *bptr, int *cptr);
void SolveEquation(int a, int b, int c, double *x1ptr, double *x2ptr);
void DispRoots(double x1, double x2);
int main()
{
int a, b, c;
double x1, x2;
GetCoefficients(&a, &b, &c);
SolveEquation(a, b, c, &x1, &x2);
DispPoots(x1, x2);
return 0;
}
void GetCoefficients(int *aptr, int *bptr, int *cptr)
{
scanf("%d%d%d", &aptr, &bptr, &cptr);
}
void SolveEquation(int a, int b, int c, double *x1ptr, double *x2ptr)
{
double d1, d2, n;
int m;
while(a != 0 && b != 0 && c != 0)
{
int m = b * b - 4 * a * c;
if(m >= 0)
{
n= 1.0 * m;
d1 = (-b * 1.0 + (double)sqrt(n)) / (2.0 * a);
d2 = (-b * 1.0 - (double)sqrt(n)) / (2.0 * a);
}
*x1ptr = d1;
*x2ptr = d2;
}
}
void DispRoots(double x1, double x2)
{
printf("%.2f,%.2f\n", x1, x2);
}