题目:给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。
输入描述:多组输入数据,每一行输入三个a,b,c,作为三角形的三个边,用空格分隔。
输出描述:针对每组输入数据,输出占一行,如果能构成三角形,等边三角形则输出“等边三角形”,等腰三角形则输出“等腰三角形”,其余的三角形则输出“普通三角形”,反之输出“不是三角形”。
思路:这题首先要运用while来写一个换行输入,其次用if循环写,判断是否为三角形,再嵌套if循环中去判断三角形的类型。
#include<stdio.h>
int main() {
int a = 0;
int b = 0;
int c = 0;
while ((scanf("%d %d %d", &a, &b, &c)) != EOF) //换号可以输入多组数据
{
if (a + b > c && a + c > b && b + c > a) //判断是否为三角形
{
if (a == b && b == c) //判断类型
{
printf("等边三角形\n");
}
else if(a==b||a==c||b==c) {
printf("等腰三角形\n");
}
else {
printf("普通三角形\n");
}
}
else {
printf("不是三角形\n");
}
}
return 0;
}