注意在这段代码中,double quadratic(); 顶部的 **double quadratic(double a, double b, double c) 与 main 下面定义中的不匹配。
然而奇怪的是,这编译!我正在使用gcc -ansi -Wall -pedantic sorry.c并且无论我使用什么标志,它仍然有效。
这与我所学的背道而驰。为什么这个编译和工作正常?
#include <stdio.h>
#include <math.h>
double inputValues();
double quadratic();
int main()
{
inputValues();
inputValues();
inputValues();
return 0;
}
double inputValues()
{
double a, b, c,derp;
printf("Enter a value a: ");
scanf("%lf", &a);
printf("Enter a value b: ");
scanf("%lf", &b);
printf("Enter a value c: ");
scanf("%lf", &c);
derp = quadratic(a, b, c);
printf("One x-value for this equation is %0.3f: \n", derp);
return 0;
}
double quadratic(double a, double b, double c)
{
double quad;
quad = (-b + sqrt(b*b-4*a*c))/(2*a);
return quad;
}