你还是先答清楚我a==b==c和a==b!=c之类是怎么运算的再说吧。

授人以渔,不授人以鱼。
程序代码:#include <stdio.h>
#include <stdlib.h>
int main(void)
{
printf("请输入边长\n");
float a,b,c;
scanf("%f,%f,%f",&a,&b,&c);
if(a+b<=c||a+c<=b||b+c<=a)
printf("不能构成三角形\n");
else
{
if(a==b&&a==c)
printf("是等边三角形\n");
else if((a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b)&&((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&c!=a)))
printf("是等腰直角三角形\n");
else if((a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b))
printf("是直角三角形\n");
}
printf("三角形的面积是%f\n",(a+b+c)/2);
return 0;
}
程序代码:#include <stdio.h>
#include <stdlib.h>
#include < math.h >
int main(void)
{
printf("请输入边长\n");
float a,b,c,s, area;
scanf("%f,%f,%f",&a,&b,&c);
s = 1.0/2 * ( a + b + c );
area = sqrt ( s * ( s - a ) * ( s - b ) * ( s - c ));
if(a+b<=c||a+c<=b||b+c<=a)
printf("不能构成三角形\n");
else
{
if(a==b&&a==c)
printf("是等边三角形\n");
else if((a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b)&&((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&c!=a)))
printf("是等腰直角三角形\n");
else if((a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b))
printf("是直角三角形\n");
}
printf("三角形的面积是%f\n", area);
system ( "pause" );
return 0;
}面积不是这样求的,Tonydeng说话是有点直,但他在为你好,看看我的吧,你错在哪自己看看。。。。
