C语言三角形类型判断

简介: C语言三角形类型判断


#include <stdio.h>
#include <windows.h>
#include <math.h>
int main()
{
    int a, b, c;           //三条边长
    float area, perimeter; //面积 ,周长
    int t;
    system("title Triangle Judgment Procedure");
    printf("input three nuber:");
    scanf("%d%d%d", &a, &b, &c);
    getchar();
    //排序 ps:因为后面的三角形类型判断会用
    if (a < b)
    {
        t = a;
        a = b;
        b = t;
    }
    if (a < c)
    {
        t = a;
        a = c;
        c = t;
    }
    if (b < c)
    {
        t = b;
        b = c;
        c = t;
    }
    //  printf("%d%d%d",a,b,c);
    perimeter = a + b + c;
    float per = perimeter / 2;
    area = sqrt(per * (per - a) * (per - b) * (per - c));
    if (a + b > c || a + c > b || b + c > a)
    {
        //输出周长以及面积
        printf("Circumference of triangle:%.2f\n", perimeter);
        printf("Triangular area:%.2f\n", area);
        //判断是什么三角形
        if ((pow(b, 2) + pow(c, 2)) > pow(a, 2))
            printf("Triangle type:锐角\n");
        else if ((pow(b, 2) + pow(c, 2)) == pow(a, 2))
            printf("Triangle type:直角\n");
        else if ((pow(b, 2) + pow(c, 2)) < pow(a, 2))
            printf("Triangle type:钝角\n");
        //下面是判断是什么特殊三角形
        if ((a == b && a != c) || (c == b && c != a) || (a == c && a != b))
            printf("等腰三角形\n");
        else if (a == b && a == c)
            printf("等边三角形\n");
        else
            printf("特殊三角形:ERROR!");
    }
    else
        printf("ERROR!");
    getchar();
    return 0;
}

原本的问题是:输入三条边的长度,判断是否构成三角形,如果构成输出周长以及面积。

我写的程序多出一部分是判断是什么类型的三角形。


相关文章
|
1天前
|
存储 编译器 C语言
【C语言】判断字符类型的三种方法
【C语言】判断字符类型的三种方法
86 0
|
1天前
|
存储 C语言
C语言变量类型
C语言变量类型
|
1天前
|
存储 数据处理 C语言
C语言类型的变量
C语言类型的变量
19 1
|
1天前
|
存储 编译器 C语言
c语言中char的作用类型
c语言中char的作用类型
38 0
|
1天前
|
编译器 C语言
c语言中long的作用类型
c语言中long的作用类型
35 0
C4.
|
1天前
|
存储 C语言
C语言的共用体类型
C语言的共用体类型
C4.
16 0
|
1天前
|
存储 C语言
C语言变量类型
C语言变量类型
33 0
|
1天前
|
存储 C语言
C语言 -共用体类型
C语言 -共用体类型
17 1
|
1天前
|
C语言
C语言指针类型,8个例子给你讲明白
C语言指针类型,8个例子给你讲明白
44 0
|
1天前
|
存储 C语言
C语言中定义结构体类型变量的深入探索
C语言中定义结构体类型变量的深入探索
10 0