有关一个C程序的问题

来源:百度知道 编辑:UC知道 时间:2024/05/22 01:05:57
#include <stdio.h>
#include <math.h>
static float a,b,c,t,x1,x2;
void main()
{
void two-num(d);
float only();
void no-num();
printf("please input a,b,c\n");
scanf("%f,%f,%f",&a,&b,&c);
t=b*b-4*a*c;
if(t>0) two-num(t);
else if(t==0)
printf(x1=x2=%f\n",only());
else
no-num();
}
void two-num(d)
{
float m;
m=sqrt(d);
x1=(-1*b+m)/2*a;
x2=(-1*b-m)/2*a;
printf("x1=%f,x2=%f",x1,x2);
}
float only()
{
float m;
m=-1*b/2*a;
return m;
}
void no-num()
{
printf("error!");
}
就是它,到底哪里错了,由于我新学C,还请各位帮忙!

变量d没有定义,改后源程序如下:
#include <stdio.h>
#include <math.h>
static float a,b,c,d,t,x1,x2;
void main()
{
void two-num(d);
float only();
void no-num();
printf("please input a,b,c\n");
scanf("%f,%f,%f",&a,&b,&c);
t=b*b-4*a*c;
if(t>0) two-num(t);
else if(t==0)
printf(x1=x2=%f\n",only());
else
no-num();
}
void two-num(float d)
{
float m;
m=sqrt(d);
x1=(-1*b+m)/2*a;
x2=(-1*b-m)/2*a;
printf("x1=%f,x2=%f",x1,x2);
}
float only()
{
float m;
m=-1*b/2*a;
return m;
}
void no-num()
{
printf("error!");
}