c语言经典题(是否能构成三角形)

题目描述:

给定三个正整数,代表可能组成一个三角形的三条边长。
如果能组成 一个等边三角形,输出"equilateral"; 如果能组成 一个直角三角形,输出"right"; 如果不能组成 一个三角形,输出"error", 否则,输出"normal".

输入描述:

第一行一个正整数T(1≤T≤100)T(1≤T≤100),表示测试数据的组数。
每组数据在一行内给出三个正整数a,b,c(1≤a,b,c≤1000)a,b,c(1≤a,b,c≤1000), 表示可能组成三角形的三条边长。

输出描述:

对于每组数据,一行内输出答案。

代码展示:

1.#include <stdio.h>  
2.#include <string.h>  
3.int main()  
4.{  
5.    int a,b,c;  
6.    scanf("%d %d %d",&a,&b,&c);  
7.        if(a+b>c&&a+c>b&&b+c>a){  
8.            if(a==b&&b==c&&a==c){  
9.                printf("equilateral\n");  
10.            }else if(a*a+b*b==c*c||a*a+c*c==b*b||c*c+b*b==a*a){  
11.                printf("right\n");  
12.            }else printf("normal\n");          
13.        } else printf("error\n");  
14.    }  

代码详解:

本次代码较为简单,仅仅要满足任意两边之和大于第三边这一个条件,否则输出error。然后在这个循环中判断三边是否相等,若相等则输出equilateral,同理根据勾股定理,判断是否为直角三角形即可。若只满足第一个条件,则输出normal即可。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无敌暴龙战士16

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值