【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的最大公约数,并打印出结果

相关推荐
Geoking.6 分钟前
深度理解 Java synchronized —— 从原理到实战
java·开发语言
sailing-data8 分钟前
【UI Qt】入门笔记
开发语言·qt·ui
Salt_072810 分钟前
DAY32 类的定义和方法
开发语言·python·算法·机器学习
未来影子16 分钟前
Java领域构建Agent新杀入一匹黑马(agentscope-java)
java·开发语言·python
不会写DN18 分钟前
JavaScript call、apply、bind 方法解析
开发语言·前端·javascript·node.js
阿里嘎多学长19 分钟前
2025-12-12 GitHub 热点项目精选
开发语言·程序员·github·代码托管
goxingman20 分钟前
实体类上关于时间字符串和时间字段转换涉及注解分析
java·开发语言
_Voosk21 分钟前
C指针存储字符串为何不能修改内容
c语言·开发语言·汇编·c++·蓝桥杯·操作系统
吃不饱的得可可32 分钟前
【Linux】mmap文件映射的使用
linux·开发语言·c++
管理大亨34 分钟前
ELK的操作应用
开发语言·python·elk