C语言: 判断三条边能否构成三角形并确定其类型

这篇文章提供了一个C语言程序,用于根据给定的三条边判断是否能够构成三角形,并确定三角形的类型:等边三角形、等腰三角形或普通三角形。

问题描述:

KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。

输入:

输入三个整数a,b,c(0<a,b,c<1000),作为三角形的三个边,用空格分隔。

输出:

输出占一行,如果能构成三角形,等边三角形则输出'Equilateral triangle!',等腰三角形则输出'Isosceles triangle!',其余的三角形则输出'Ordinary triangle!',反之输出'Not a triangle!'。

解题思路:

  1. 读取输入的三个整数a,b,c作为三角形的三条边。2. 根据三角形的性质进行判断: - 首先,判断任意两条边的和是否大于第三条边。如果有任意一组边的和小于等于第三条边,则无法构成三角形。 - 如果a、b、c三边相等,那么构成等边三角形。 - 否则,如果有两条边相等(例如a=b、a=c或b=c),那么构成等腰三角形。 - 如果以上条件都不满足,则为普通三角形。3. 根据判断结果输出相应的信息。

**C语言代码:**c#include <stdio.h>

int main() { // 输入三角形的三条边a、b、c int a, b, c; scanf('%d %d %d', &a, &b, &c);

// 判断是否能构成三角形以及三角形的类型    if (a + b > c && a + c > b && b + c > a) {        if (a == b && b == c) {            printf('Equilateral triangle!

'); // 等边三角形 } else if (a == b || a == c || b == c) { printf('Isosceles triangle! '); // 等腰三角形 } else { printf('Ordinary triangle! '); // 普通三角形 } } else { printf('Not a triangle! '); // 无法构成三角形 }

return 0;}

代码解释:

  • #include <stdio.h>: 引入标准输入输出库。- int main(): 程序入口函数。- scanf('%d %d %d', &a, &b, &c);: 从控制台读取三个整数并赋值给变量a, b, c。- if (a + b > c && a + c > b && b + c > a): 判断三条边是否满足构成三角形的条件。- 嵌套的if-else语句根据三条边的关系判断三角形的类型。- printf(): 输出判断结果。

注意:

上述代码中未对输入进行错误处理,实际使用时可能需要添加适当的错误处理逻辑,例如判断输入是否为整数以及是否在0到1000的范围内。

C语言: 判断三条边能否构成三角形并确定其类型

原文地址: http://www.cveoy.top/t/topic/J8L 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录