关于多个文件中的函数调用
//这是一个求二次方程跟的程序,现在把它各个解的情况分别写在不同的.c文件下调用//主函数===============file0=======================
#include<stdio.h>
#include<math.h>
float x1,x2,disc,p,q;
int main()
{
void result_equal(float a , float b );
void result_greater(float a , float b );
void result_smaller(float a , float b );
float a,b,c;
printf("请输入二次方程的系数\n");
scanf("%f%f%f",&a,&b,&c);
printf("equation:%5.2f*x*x+%5.2f*x+%5.2f=0\n",a,b,c);
printf("root\n");
if(abs(a)<=1e-6)
printf("这不是一个二次方程\n");
else
{
disc=b*b-4*a*c;
if(abs(disc)<=1e-6)
{
result_equal( a , b );
printf("次方程有两个相等的根:x1=%f\t\tx2=%f\n",x1,x2);
}
else if(disc>0)
{
result_greater(a,b);
printf("此方称有两个实数根:x1=%f\t\tx2=%f\n",x1,x2);
}
else
{
result_smaller(a,b);
printf("此方程有两个复数根:x1=%f + %fi\tx2=%f - %fi\n ",p,q,p,q);
}
}
return 0;
}
//=======================file1====================
#include<stdio.h>
#include<math.h>
void result_equal(float a , float b )
{
extern x1,x2;
x1=x2=(-b/(2*a));
}
//=======================file2=======================
#include<stdio.h>
#include<math.h>
void result_greater(float a , float b )
{
extern x1,x2,disc;
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
}
//=======================file3=========================
#include<stdio.h>
#include<math.h>
void result_smaller(float a , float b )
{
extern p;
extern q;
extern disc;
p=-b/(2*a);
q=sqrt(-disc)/(2*a);
}
运行报错 ,请各位大侠看看