判断输入的3个数是否能构成三角形,如果能构成三角形,则判断其是哪一种三角形

#include
#include
int mian()
{
float a,b,c;
scanf("%f%f%f",&a,&b,&c);
if((a+b)>c&&(a+c)>b)
{
if(fabs(a-b)<=1e-6&&fabs(b-c)<=1e-6)
printf("等边三角形");
else if(fabs(a-b)<=1e-6||fabs(b-c)<=1e-6||fabs(a-c)<=1e-6)
printf("等腰三角形");
else if(fabs(a*a+b*b-c*c)<=1e-6||fabs(a*a+c*c-b*b)<=1e-6||fabs(b*b+c*c-a*a)<=1e-6)
printf("直角三角形");
else
printf("一般三角形");
}

else
printf("不能构成三角形");
}

一个明显的错误是main写成了mian
另一个重要的错误是
if((a+b)>c&&(a+c)>b)
这里缺少&&(b+c)>a
否则a=100,b=1,c=1,显然构不成三角形。


#define mian main
的重要性