C语言判断三角形类型并计算面积

这里将介绍如何根据三角形的三条边判断三角形类型,并输出其类型与面积的方法。

算法思想

首先输入三条边的长度,先判断任意两边之和是否大于第三边,若小于,则不能构成三角形。
接着依次判断下列条件:

  • 三角形三边是否相等,成立则为等边三角形。
  • 三角形任意两边是否相等,成立则为等腰三角形。
  • 三角形任意一边的平方是否等于另外两边平方和,若成立则为直角三角形。
  • 若不满足上述三种条件,则为普通三角形。

面积计算方法:由于只知道三角形的三边长,所以采用海伦公式进行计算。
在这里插入图片描述
代码如下:

#include<stdio.h>
#include<math.h>
int main()
{
	float a,b,c;
	float p,S;
	printf("请输入三角形的三边长:");
	scanf("%f %f %f",&a,&b,&c);
	if(a+b>c && a+c>b && b+c>a)
	{
		p=(a+b+c)/2;
		S=sqrt(p*(p-a)*(p-b)*(p-c));
		printf("三角形的面积为%f\n",S);
		if(a==b && a==c)
		{
			printf("三角形为等边三角形"); 
		}else if(a==b || a==c || b==c)
		{
			printf("三角形为等腰三角形"); 
		}else if((a*a==b*b+c*c) || (b*b==a*a+c*c) || (c*c==a*a+b*b))
		{
			printf("三角形为直角三角形");
		}else
		{
			printf("三角形是普通三角形");
		}
	}else
	{
		printf("不能构成三角形");
	}
	return 0;
} 

代码第二行实际上是引入math库,我们便可以使用sqrt()函数进行开平方根操作。逻辑运算符“&&”相当于“且”,“||”相当于“或”。

  • 16
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值