这个“判断三角形类型”的程序错在哪?

来源:百度知道 编辑:UC知道 时间:2024/05/22 19:46:03
/*判断三角形为何种类型的三角形*/

/*日期:2009年3月17日*/

#include <stdio.h>
#include <stdlib.h>

int main()
{
float a,b,c;
printf("请分别输入要判定三角形的三边a,b,c:\n");
scanf("%f,%f,f",&a,&b,%c);

if(((a+b>c)||(b+c>a)||(a+c>b))&&((a-b<c)||(a-c<b)||(b-c<a)))
{
if((a==b==c)
printf("该三角形是等边三角形。\n");
else if((a==b!=c)||(a==c!=b)||(b==c!=a))
printf("该三角形是等腰三角形。\n");
else if((a*a+b*b=c*c)||(c*c+b*b=a*a)||(a*a+c*c=b*b))
printf("该三角形是直角三角形。\n");
else
printf(该三角形是普通三角形);
}

getch();

return 0;
}

请高手指教啊!感激不尽!!
我把那句打错的语句该过来了:
scanf("%d,%d,%d",&a,&b,&c);

但还是提示有错……

首先呢,你的 那个判断等腰的格式就错了“((a==b!=c)||(a==c!=b)||(b==c!=a))”,C语言的的语句,与我们口头的表述不一样,你要改成((a==b&b!=c)||(a==c&c!=b)||(b==c&b!=a))

这个是我新编的,你可以试试
#include <stdio.h>
#include <math.h>
void main()
{
float a,b,c,d,s;
scanf("%f,%f,%f",&a,&b,&c);
if(a+b>c&&a+c>b&&b+c>a)
{
if(a==b||b==c||c==a)
{if(a==b&&b==c) printf("this is a dengbiansanjiaoxing\n");
else printf("this is a dengyao sanjiaoxing\n");
}
else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
printf("this is zhijiao\n");
else printf("yibansanjiaoxing\n");
d=(a+b+c)/2;
s=sqrt(d*(d-a)*(d-b)*(d-c));
printf("%f\n",s);
}
}
else printf("bushi sanjiaoxing ") ;
}

你自己编译通过了吗?
scanf("%f,%f,f",&a,&b,%c);这句是不是打错了

说明白些啊

C语言?上机执行了吗?是什么问题?