C语言输入三角形边长判断其类型并输出面积实例代码

本文主要研究的是输入三角形边长判断其类型并输出面积,用C语言实现,具体如下。

思路:首先判断所给的三条边是否能够组成三角形,若可以组成三角形,则判断该三角形是什么类型,并求三角形的面积。

相关知识:

三角形是由同一平面内不在同一直线上的三条线段‘首尾'顺次连接所组成的封闭图形。常见的三角形按边分有普通三角形(三条边都不相等),等腰三角(腰与底不等的等腰三角形、腰与底相等的等腰三角形即等边三角形)

不等边三角形:不等边三角形,数学定义,指的是三条边都不相等的三角形叫不等边三角形。

等腰三角形:等腰三角形(isosceles triangle),指两边相等的三角形,相等的两个边称为这个三角形的腰。等腰三角形中,相等的两条边称为这个三角形的腰,另一边叫做底边。两腰的夹角叫做顶角,腰和底边的夹角叫做底角。等腰三角形的两个底角度数相等(简写成“等边对等角”)。等腰三角形的顶角的平分线,底边上的中线,底边上的高重合(简写成“等腰三角形的三线合一性质”)。等腰三角形的两底角的平分线相等(两条腰上的中线相等,两条腰上的高相等)。等腰三角形底边上的垂直平分线到两条腰的距离相等。等腰三角形的一腰上的高与底边的夹角等于顶角的一半。等腰三角形底边上任意一点到两腰距离之和等于一腰上的高(需用等面积法证明)。等腰三角形是轴对称图形,(不是等边三角形的情况下)只有一条对称轴,顶角平分线所在的直线是它的对称轴,等边三角形有三条对称轴。等腰三角形中腰的平方等于高的平方加底的一半的平方。等腰三角形的腰与它的高的关系,直接的关系是:腰大于高。间接的关系是:腰的平方等于高的平方加底的一半的平方。

等边三角形:等边三角形(又称正三角形),为三边相等的三角形,其三个内角相等,均为60°,它是锐角三角形的一种。等边三角形也是最稳定的结构。等边三角形是特殊的等腰三角形,所以等边三角形拥有等腰三角形的一切性质。

直角三角形:有一个角为直角的三角形称为直角三角形。在直角三角形中,直角相邻的两条边称为直角边。直角所对的边称为斜边。若a的平方+b的平方=c的平方,则以a、b、c为边的三角形是以c为斜边的直角三角形(勾股定理的逆定理)。

判断三条线段能否组成三角形的依据是三角形三边关系的定理:“三角形任何两边的和大于第三边”和它的推论:“三角形任何两边的差小于第三边”。

计算面积方式:使用边长进行计算

1:计算三角形的半周长。半周长等于图形周长的一半。想算出三角形的半周长,需要先将三角形的三条边长加起来求出周长,然后乘以1/2;

2:用海伦公式求三角形面积。海伦公式如下:

具体实现和分析:

通过输入三角形的三条边,首先判断两边之和是否大于第三边,若大于第三边则进一步判断该三角形是什么三角形,3边相等为等边三角形,两边相等为等腰三角形,满足两边平方之和等于第三边的平方即是直角三角形,其余为普通三角形,否则输入的三角形不能够组成三角形。

void decideTrangleType(){ 

  float a,b,c; //定义 a,b,c为三条边
  float s,area; 

  printf("请输入三角形的三条边:\n");
  rewind(stdin);//清空缓存区的所有数据
  scanf("%f%f%f",&a,&b,&c); 

  if (a+b>c && b+c>a && a+c>b) {     //判断两边之和是否大于第三边
    s = (a+b+c)/2;           //计算半周长
    area = sqrt(s*(s-a)*(s-b)*(s-c)); //计算三角形面积
    printf("面积是:%f",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");
  }
} 

相关测试数据:

Hello, World!
请输入三角形的三条边:
3 45
面积是:6.000000直角三角形

3 33
面积是:3.897114等边三角形

3 43
面积是:4.472136等腰三角形

3 610
不能构成三角形

7 8 9
面积是:26.832815普通三角形

总结

以上就是本文关于C语言输入三角形边长判断其类型并输出面积实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

您可能感兴趣的文章:

  • c语言计算三角形面积代码
(0)

相关推荐

  • c语言计算三角形面积代码

    复制代码 代码如下: //面积公式s = (a+b+c) / 2   area = sqrt(s * (s - a) * (s - b) * (s - c));//小作业 求三角形的面积 int check(double a);int check2(double a, double b, double c); #include <stdio.h>#include <math.h>int main(void){    double area = 0;    double s;   

  • C语言输入三角形边长判断其类型并输出面积实例代码

    本文主要研究的是输入三角形边长判断其类型并输出面积,用C语言实现,具体如下. 思路:首先判断所给的三条边是否能够组成三角形,若可以组成三角形,则判断该三角形是什么类型,并求三角形的面积. 相关知识: 三角形是由同一平面内不在同一直线上的三条线段'首尾'顺次连接所组成的封闭图形.常见的三角形按边分有普通三角形(三条边都不相等),等腰三角(腰与底不等的等腰三角形.腰与底相等的等腰三角形即等边三角形) 不等边三角形:不等边三角形,数学定义,指的是三条边都不相等的三角形叫不等边三角形. 等腰三角形:等腰

  • java判断Long类型的方法和实例代码

    java判断是否是Long类型 1.首先定义一个getType方法,接收一个Object类型的参数: 2.然后使用getClass方法获取class类型的对象: 3.再使用toString()方法转为字符串,并使用substring截取字符串获得变量类型: 4.最后根据变量类型和Long字符串进行对比即可 public class HelloWorld { public static void main(String[] args) { Boolean res = getType(1232343

  • python实现输入三角形边长自动作图求面积案例

    三角形是个好东西,比如知道三条边边长,可以判断能不能组成三角形(两边之和大于第三边),如果可以就进一步计算其面积(海伦公式),最后还能把这个三角形画出来(余弦定理求角度),所以说这个作为一个编程题目用于教学是比较棒的. 在jupyterlab中运行效果如下: python源代码如下: # %matplotlib inline # 建议在jupyterlab中运行 import math import numpy as np import matplotlib.pyplot as plt def

  • C语言统计一篇英文短文中单词的个数实例代码

    具体代码如下所述: #include<stdio.h> #define N 1000 void main(){ char en[N][81]; int i,j,num=0,n,state; //num 用来统计单词的个数 //state 用来记录程序当前是否处于一个单词之中,初值为0,表示不在单词中,值为1,表示正处于在一个单词中 printf("Please input the number of lines for English passage:"); scanf(&

  • C语言中实现“17进制”转“10进制”实例代码

    C语言中实现"17进制"转"10进制"实例代码 17进制转成10进制,输入是数字跟大写字母.例如输入G.11.FF,分别输出16.18.270 #include <iostream> #include <string> using namespace std; int main() { string s; int len,factor=17,num; bool sign;//用来标志输入字符串是否非法 while(cin>>s)

  • JavaScript中boolean类型之三种情景实例代码

    实例如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Co

  • Android判断是否有拍照权限的实例代码

    下面一段代码给大家介绍android判断是否有拍照权限,具体代码如下所示: /** * 返回true 表示可以使用 返回false表示不可以使用 */ public boolean cameraIsCanUse() { boolean isCanUse = true; Camera mCamera = null; try { mCamera = Camera.open(); Camera.Parameters mParameters = mCamera.getParameters(); //针对

  • android判断设备是否有相机的实例代码

    通过PackageManager可以判断android设备是否有相机 PackageManager pm = getPackageManager(); // FEATURE_CAMERA - 后置相机 // FEATURE_CAMERA_FRONT - 前置相机 if (!pm.hasSystemFeature(PackageManager.FEATURE_CAMERA) && !pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FRONT

  • python爬虫判断招聘信息是否存在的实例代码

    在找工作的时候,我们会选择上网查询招聘的信息,或者是通过一些招聘会进行现场面试.但由于信息更新不及时,有一些岗位会出现下架的情况,如果我们不注意的话,可能就扑了空.在时间上耽误了不说,面试的信息也会受到一点点打击.今天小编就教大家python爬虫来判断招聘信息是否存在. 首先这里需要一个判断某条招聘是否还挂在网站上的方法,这个暂时想到了还没弄,然后对于发布时间在两个月之前的数据,就不进行统计计算. 以下是完成代码: { "_id" : ObjectId("5a30ad2068

  • php判断数组元素不为空格实例代码

    1.使用foreach ($arr as $value){}语句遍历数组. 2.使用if($value!=" ")语句判断数组元素是否为空格. 3.如果数组元素全部不为空,则输出数组元素不为空格. 实例 <?php header("Content-type:text/html;charset=utf-8"); $arr = array(10,"php中文网",20," ","php教程"); $i=0

随机推荐