高分悬赏,给出三角形的三条边a,b,c,从键盘输入,然后判断它是什么类型的三角形(直角、等边、等腰或者不是三角形)

高分悬赏,给出三角形的三条边a,b,c,从键盘输入,然后判断它是什么类型的三角形(直角、等边、等腰或者不是三角形)

算法思路:定义判断各种三角形的规则,然后走不同分支输出结果,这里有一个完整的 Java 实现的,可以参考:
https://blog.csdn.net/yuxiangaaaaa/article/details/78292251

#include
#include
int main()
{
int a,b,c;
printf("请分别输入三条边长:");
while(1)
{
scanf("%d%d%d",&a,&b,&c);
if(a<=0 || b<=0 || c<=0)
printf("边长不能为非正数,请重新输入:\n");
if(a+b<=c || a+c<=b || b+c<=a)
printf("两边和小于第三边,不能构成三角形,请重新输入:\n");
else
break;
}
if((a==b&&a!=c)||(a==c&&a!=b)||(b==c&&b!=a))
printf("%d,%d,%d这三条边构成一个等腰三角形.\n",a,b,c);
else if(a==b==c)
printf("%d,%d,%d这三条边构成一个等边三角形.\n",a,b,c);
else if(a*a==b*b+c*c||a*a+b*b==c*c||b*b==c*c+a*a)
printf("%d,%d,%d这三条边构成一个直角三角形.\n",a,b,c);
else
printf("%d,%d,%d这三条边构成一般三角形.\n",a,b,c);
}

https://bbs.csdn.net/topics/396096483

输入 a, b , c ,
增序排序 , 得到 l[3]

如果 l[0] + l[1] > l[2] , 依次做如下判断
三角形标志 = '一般三角形'
如果 l[0]*l[0] + l[1]*l[1] = l[2] * l[2] ,打印 '直角三角形' , 三角形标志 = ''
如果 l[0] = l[1] = l[2] ,打印 '等边三角形' , 三角形标志 = ''
如果 l[0] = l[1] OR l[0] = l[2] OR l[1] = l[2] ,打印 '等腰三角形' , 三角形标志 = ''
打印 三角形标志
否则 打印 '不是三角形'

python


if a+b>c and a-b<c:
    print('能组成', end = '')
    if a**2+b**2==c**2 or c**2+a**2==b**2 or c**2+b**2==a**2:
        print('直角三角形!')
    elif a==b and b==c:
        print('等边三角形!')
    elif a==b or a==c or b==c:
        print('等腰三角形!')
    else:
        print('一般三角形!')
else:
    print('不能组成三角形!')

#include
int main()
{
float a,b,c;
printf("请输入三角形的三条边:");
scanf("%f%f%f",&a,&b,&c);
if((a+b)<c||(c+b)<a||(a+c)<b||a<0||b<0||c<0)
printf("输入有误,无法构成三角形!");
if(a==b==c)
printf("该三角形为等边三角形!");
if(a*a+b*b==c*c||a*a+c*c==b*b||c*c+b*b==a*a)
printf("该三角形为直角三角形!");
if(a==b||a==c||b==c)
printf("该三角形为等腰三角形!");
else
printf("该三角形为普通三角形!");
printf("\n");
return 0;
}
兄弟,那个,我最近才开始接触编程,所学习的计算机语言有限,目前只对C,C++,有一点点了解,这个是我编的,很简单,甚至有点土,不过,我会加油的,这是我回答的第一个问题,嘻嘻,希望能帮到你。