大学生新闻网,大学生新闻发布平台
大学生新闻网
大学生新闻大学生活校园文学大学生村官
社会实践活动社会实践经历社会实践报告社会实践总结社会实践心得
全国排名校友会版软科排名分类排名本科排名一本排名二本排名专科排名学校地址
求职简历职场法则面试技巧职场故事求职招聘大学生就业
英语学习计算机学习电气工程机械工程经济管理建筑设计财务会计
申请书证明书检讨书自荐信演讲稿心得体会调查报告读后感求职信推荐信其它范文

C语言判断三角形的类型

根据输入的三角形的三条边判断三角形的类型,并输出其面积和类型。

算法思想
首先判断其两边之和是否大于第三边,若大于则判断可以构成三角形,再进一步判断该三角形是什么三角形,并计算这个三角形的面积;否则不能构成三角形。

① 从键盘输入三角形的三条边。

② 判断两边之和是否大于第三边。

③ 若条件成立则判断可构成三角形,计算其面积,并判断其类型;否则判断其不能构成三角形。

④ 在类型判断中首先判断其是否三边相等,条件成立则判断其为等边三角形;否则判断其是否有两边相等,条件成立则判断其为等腰三角形;否则判断其是否有两边的平方和等于第三边的平方,条件成立则判断其为直角三角形;否则判断其为普通三角形。

程序代码
#include <stdio.h>
#include <math.h>
int main()
{
    float a,b,c;
    float s,area;
    printf("请输入三角形的三条边:\n");
    scanf("%f,%f,%f",&a,&b,&c);
    if(a+b>c&&b+c>a&&a+c>b)
    {
        s=(a+b+c)/2;
        area=(float)sqrt(s*(s-a)*(s-b)*(s-c));
        printf("三角形的面积是:%f\n" ,area);
        if(a==b&&a==c)
            printf("三角形是等边三角形\n");
        else if(a==b||a==c||b==c)
            printf("三角形是等腰三角形\n");
        else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
            printf("三角形是直角三角形\n");
        else
            printf("三角形是普通三角形\n");
    }
    else
        printf("不能构成三角形\n");
    return 0;
}
调试运行结果
输入为 3,3,3 时,对应的输出情况如下所示:
请输入三角形的三条边:
3,3,3
三角形的面积是:3.897114
三角形是等边三角形

输入为 3,4,5 时,对应的输出情况如下所示:
请输入三角形的三条边:
3,4,5
三角形的面积是:6.000000
三角形是直角三角形

总结
① 在本实训之前必须知道三角形的相关知识,比如,怎么判断输入的三边是否能构成三角形、三角形的面积计算方法等。
② 要注意逻辑运算符“&&”和“||”的使用,当需要同时满足多个条件时,使用“&&”运算符;而当只需满足多个条件中的一个时,使用“||”运算符。
    作者:大学生新闻网    来源:大学生新闻网
    发布时间:2025-03-05    阅读:
    扫一扫 分享悦读
  • C语言二分查找算法,折半查找算法
  • 本实例采用二分查找法查找特定关键字的元素。要求用户输入数组长度,也就是有序表的数据长度,并输入数组元素和査找的关键字。
  • 03-05 关注:0
  • C语言归并排序算法
  • 用归并排序法对一组数据由小到大进行排序,数据分别为 695、458、362、789、12、 15、163、23、2、986。
  • 03-05 关注:0
  • C语言选择排序算法
  • 用选择排序法对一组数据由小到大进行排序,数据分别为 526、36、2、369、56、45、78、92、125、52。
  • 03-05 关注:0
  • C语言快速排序算法
  • 用快速排序法对一组数据由小到大进行排序,数据分别为 99、45、12、36、69、22、62、 796、4、696。
  • 03-05 关注:0