【刷题记录】
写在前面此系列文章仅是对个人学习的记录,如有错误敬请谅解给予指正。
第24次刷题
1.题目描述:KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。
输入描述:题目有多组输入数据,每一行输入三个a,b,c(0<a,b,c<1000),作为三角形的三个边,用空格分隔。
输出描述:针对每组输入数据,输出占一行,如果能构成三角形,等边三角形则输出“Equilateral triangle!”,等腰三角形则输出“Isosceles triangle!”,其余的三角形则输出“Ordinary triangle!”,反之输出“Not a triangle!”。
2.代码:
#include<stdio.h>
int main(){
int m,n,k;
while(scanf("%d%d%d",&m,&n,&k)!=EOF){ //检测
if(m+n>k&&m+k>n&&n+k>m){ //判断是否为三角形
if(m==n&&n==k&&m==k) //判断三角形是否为等边三角形
printf("Equilateral triangle!\n");
else if(m==n||m==k||n==k) //判断三角形是否为等腰三角形
printf("Isosceles triangle!\n");
else printf("Ordinary triangle!\n");//如果不是等边,等腰输出普通三角形
}else{
printf("Not a triangle!\n"); //不是三角形
}
}
}
3.问题分析:构成三角形条件是两边之和大于第三边,根据三角形规则用if判断三角形类型。