题目

三角形的判断
难度级别:A; 运行时间限制:1000ms; 运行空间限制:51200KB; 代码长度限制:2000000B
试题描述

输入三个正整数 a、b 和 c,分别表示三条线段的长度,判断其是否能够构成三角形,如果能够构成三角形,寻找该三角形的特征,特征有:①等边三角形 ②锐角三角形 ③等腰锐角三角形 ④钝角三角形 ⑤等腰钝角三角形 ⑥直角三角形 ⑦等腰直角三角形。当然是等边三角形也是锐角三角形,也是等腰三角形,这里只要求输出最贴切的一个特征,也就是说是等边三角形,你就没必要输出等腰和锐角的特征了。

输入
一行,包括三个不超过 100000 的正整数,两两之间用一个空格分隔。
输出
如果能够构成三角形,就输出该三角形的特征,如果不能,就输出无法构成三角形。
输入示例
5 12 13
输出示例
直角三角形

分析

感觉到题目突然升级了有没有?没错!是升级了。不仅情况变多了,你需要了解的也变多了。

注意事项:

1.先从小到大排序,有利于判断特征。

2.对于每种三角形的特征要比清楚。

3.输出最贴切的特征。

另外,为了有利于排序,在此介绍一个系统的交换函数,可以有效缩短代码长度,并且省去了对用来转换所需变量的定义。

用法:

swap(变量1,变量2);

但最后想明白还是挺简单的。

代码

#include<bits/stdc++.h>
using namespace std;
int a,b,c;
int main()
{scanf("%d%d%d",&a,&b,&c);if(a>b) swap(a,b);//将边的长短从小到大排,有利于后期判断。if(a>c) swap(a,c);if(b>c) swap(b,c);if(a+b<=c) printf("无法构成");//分别判断各种情况。else if(a==b&&a==c&&b==c) printf("等边");//为了输出最贴切的名称,先把限制多的名称放在前面,并使用else if。else if(a==b&&a*a+b*b==c*c) printf("等腰直角");else if((a==b||b==c||a==c)&&a*a+b*b<c*c) printf("等腰钝角");//注意判断顺序,分别判断等腰和什么角。else if((a==b||b==c||a==c)&&a*a+b*b>c*c) printf("等腰锐角");else if(a*a+b*b==c*c) printf("直角");else if(a*a+b*b<c*c) printf("钝角");else if(a*a+b*b>c*c) printf("锐角");printf("三角形");//统一输出很整洁,省长度~return 0;
}

转载于:https://www.cnblogs.com/DARTH-VADER-EMPIRE/p/9550200.html

0048-三角形的判断相关推荐

  1. 三角形形状判断(等边、等腰、直角、等腰直角、非等边)

    经典测试--三角形形状判断 使用C语言编程程序: printf("请输入三角形的三条边长度:[请输入整数(需输入根号可在后续选择)]\n");triangle.a = triang ...

  2. 使用python编程语言编写程序:输入a、b、c三个数,判断a、b、c能否构成三角形,如果能够构成三角形,判断该三角形是等腰三角形还是等边三角形,还是直角三角形,还是一般三角形。并计算周长和面积。

    使用python编程语言编写程序:输入a.b.c三个数,判断a.b.c能否构成三角形,如果能够构成三角形,判断该三角形是等腰三角形还是等边三角形,还是直角三角形,还是一般三角形.并计算周长和面积. ​ ...

  3. 三角形形态判断 循环计算e Python123题解

    在一行上输入三个边长,判断是否能构成三角形,‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬ ...

  4. 判断三个数是否构成三角形并判断三角形类型

    上机题一 题目: 从键盘上输入三个数,判断能否构成三角形,如不能,给出提示:如能,求出对应三角形的面积,并判断该三角形是锐角三角形还是钝角三角形还是直角三角形,输出对应结论. #include< ...

  5. C++输入三角形三边判断三角形类型

    问题描述 编写程序,输入三角形三条边a.b和c(假设为实数),判断它们能否构 成三角形.若不能构成三角形,则输出"Don't make a triangle":若 能构成三角形,进 ...

  6. python判断构成三角形_python_判断构成三角形

    #判断构成三角形 import math trianglea = int(input("请输入第条边长a")) triangleb = int(input("请输入第条边 ...

  7. 手动输入三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。

    #include <stdio.h> int main(){int a, b, c;while (scanf("%d%d%d", &a, &b, &am ...

  8. 输入三个边长a,b,c如果这三个边能够成三角形,判断该三角形是等边三角形,等腰三角形,还是其他三角形

    #include<studio.h> void main() {int a,b,c; printf("请输入三角形三边长:"); scanf("%d%d%d& ...

  9. php判断三角形类型,判断三角形类型

    #include #include int main() { int a0, b0, c0; while(~scanf("%d%d%d", &a0, &b0, &a ...

  10. 利用叉乘快速判断点是否在三角形内

    利用叉乘快速判断点是否在三角形内 判断P是否在三角形ABC内: 向量: pa = P - A,  ca = C - A; ba = B - A; 如果向量 cross(ca, pa)与向量 cross ...

最新文章

  1. android intent email,Android Email Intent
  2. 技术图文:如何利用C# 实现 Prim 最小生成树算法?
  3. 学习这么多算法到底在解决哪些问题?深度学习之外,我们要选择谁?
  4. C++11 并发指南九(综合运用: C++11 多线程下生产者消费者模型详解)
  5. dataAdapter与dataSet和dataTable的填充
  6. 搭建简单的SpringBoot开发环境
  7. 三维里面点击播放视频
  8. MySql 中的=操作符
  9. 授权MySQL账户访问指定数据库
  10. 【Gerrit】Add a Member
  11. windows 查看局域网内所有已使用的IP
  12. Openwrt_树莓派B+_Wifi中继
  13. ACDSee Photo Studio 7 for Mac(最好用的图像处理软件)
  14. volte的sip信令流程_VOLTE SIP代码详解及SIP流程图解
  15. 如何用python合并文本文档_如何利用python合并文本
  16. 二级c语言不写编程,计算机二级C语言 到底是不是考原题
  17. Proximal Algorithms
  18. Kubernetes查看日志命令
  19. 百度网盘mac损害计算机,百度网盘Mac版和Mac同步盘有哪些区别?百度网盘Mac版常见问题解答...
  20. 有道云笔记markdown最好的转PDF格式文档方法

热门文章

  1. 51单片机常用寄存器速查
  2. Android 的 dex2jar 和 jd-gui 反编译 apk 源代码
  3. Markdown 工程师也不简单:如何写一个高逼格 README
  4. Oracle Client安装报错:引用数据不可用于验证此操作系统分发的先决条件
  5. Ubuntu 16设置固定IP和DNS
  6. 创业初期,处理好事情的优先级
  7. Gartner预测:SD-WAN将取代路由
  8. U盘快速​安装Ubuntu系统
  9. node-inspector 在chrome里调试node代码
  10. 一段典型的PHP程序都包含那些内容呢?