《判断三角形》


【问题描述】

从键盘输入三角形的三条边长,判断能否构成三角形,如能构成三角形,则判断是哪一种类型:等腰三角形(等腰直角算作等腰)、等边三角形、直角三角形、任意三角形。输出要求如下:

不是三角形,则输出: It isn't triangle.

等腰三角形,则输出: isoceles triangle

等边三角形,则输出: equilateral triangle

直角三角形,则输出: right-angled triangle

任意三角形,则输出: arbitrary triangle

【输入形式】

从键盘输入三角形的三条边长(实数)。

【输出形式】

不是三角形,则输出: It isn't triangle.

等腰三角形,则输出: isoceles triangle

等边三角形,则输出: equilateral triangle

直角三角形,则输出: right-angled triangle

任意三角形,则输出: arbitrary triangle

【样例输入1】 1 2 3

【样例输出1】 It isn't triangle.

【样例输入2】 3.3 4.4 5.5

【样例输出2】 right-angled triangle

【样例输入3】 9.8995 14 9.8995

【样例输出3】 isoceles triangle

【评分标准】

结果完全正确得20分,共5个测试点。提交程序名为:p1009.c

 

#include<stdio.h>
int main()
{ int k=0;
double a,b,c;
scanf("%lf %lf %lf",&a,&b,&c);
int m=a*a;
int n=b*b;
int g=c*c;
if(a+b<=c||a+c<=b||b+c<=a)
printf("It isn't triangle.");
else
{
if(a==b&&b==c&&a==c)
{
k=2;
printf("equilateral triangle");
}
else if((a==b)||(b==c)||(a==c) )
{
k=1;
printf("isoceles triangle");
}

if((int) m==(int) n+(int) g || (int) n==(int) m+(int) g||(int) g==(int) m+(int) n)
{
k=1;
printf("right-angled triangle");
}
if(k==0) printf("arbitrary triangle");
}
return 0;
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM