【C语言经典100题#4】判断三角形

题目名称:

输入三个整数a,b,c,判断由a,b,c作为三条边组成的三角形,如果不能组成三角形则输出:非三角形;如果是三角形,再继续判断,如果是等边三角形,则输出:等边三角形;如果是等腰三角形,则输出:等腰三角形;否则输出普通三角形


答案

c 复制代码
#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;
	}

解题思路

三角形的判断方法是:对于三条边长a、b、c,若任意两边之和大于第三边,那么就可以组成⼀个三角形,即a+b>c,a+c>b,b+c>a。

如果组成了三角形,再判断是什么三角形,有三种情况:

  1. 等边三角形:三边相等;
  2. 等腰三角形:两边相等,但不等于第三边;
  3. 普通三角形:三边不相等。
    最后,如果输⼊的三个数不能组成三角形,则输出"非三角形"

运行结果


下期题目

输入2个整数m和n,计算m和n的最大公约数,并打印出结果

相关推荐
Data_Journal4 小时前
用于网页抓取的 Node-unblocker
大数据·开发语言·数据库·python·scrapy
豆角焖肉4 小时前
SSM 聚合项目搭建:多 Maven 模块项目
开发语言·python·pycharm
Frank_refuel4 小时前
【C++八股】面向对象
开发语言·c++
m0_380743875 小时前
为 OpenAI 兼容接口配置教程
开发语言·python·node.js
M78佐菲6 小时前
c语言学习笔记:排序与查找方法整理
linux·c语言·笔记·学习·算法
万邦科技Lafite6 小时前
阿里巴巴拍立淘按图搜索商品API返回值实践:提升用户购物满意度的关键措施
开发语言·api·开放api·电商开放平台·京东开放平台
小小龙学IT7 小时前
Qt 6 跨平台开发完全指南:从信号槽机制到实际项目落地
开发语言·qt
leisoo80977 小时前
ig50数据落盘ClickHousevsTimescaleDBvsDuckDB实测对比 IG50免费开源股票数据API接口
开发语言·jvm·数据库·python·json
wWYy.7 小时前
C++与C的区别
c语言·c++
敢敢のwings8 小时前
智元 GO-2 与 AgiBot-World 深度解读
开发语言·后端·golang