Bootstrap

每天一道C语言精选编程题之判断三角形

判断三角形
题目描述
        输⼊三个整数a,b,c,判断由a,b,c作为三条边组成的三⻆形,如果不能组成三⻆形则输出:⾮三⻆形;如果是三⻆形,再继续判断,如果是等边三⻆形,则输出:等边三⻆形;如果是等腰三⻆形,则输出:等腰三⻆形;否则输出普通三⻆形。
输⼊:3 4 5
输出:普通三⻆形
输⼊:3 3 3
输出:等边三⻆形
输⼊:3 3 4
输出:等腰三⻆形
解法思路 
三⻆形的判断⽅法是:对于三条边⻓a、b、c,若任意两边之和⼤于第三边,那么就可以组成⼀个三 ⻆形,即a+b>c, a+c>b, b+c>a。
如果组成了三⻆形,再判断是什么三⻆形,有三种情况:
1. 等边三⻆形:三边相等;
2. 等腰三⻆形:两边相等,但不等于第三边;
3. 普通三⻆形:三边不相等。
最后,如果输⼊的三个数不能组成三⻆形,则输出“⾮三⻆形”。
解法代码 
#include <stdio.h>
int main()
{
	int a = 0;
	int b = 0;
	int c = 0;
	scanf("%d %d %d", &a, &b, &c);
	//三⻆形必须满⾜任意两天边⼤于第三条边
	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;
}
运行结果
输⼊:3 4 5
输出:普通三⻆形
输⼊:3 3 3
输出:等边三⻆形
输⼊:3 3 4
输出:等腰三⻆形
;