雷火电竞-中国电竞赛事及体育赛事平台

歡迎來(lái)到入門(mén)教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

C語(yǔ)言輸入三角形邊長(zhǎng)判斷其類(lèi)型并輸出面積實(shí)例代碼

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊:

本文主要研究的是輸入三角形邊長(zhǎng)判斷其類(lèi)型并輸出面積,用C語(yǔ)言實(shí)現(xiàn),具體如下。

思路:首先判斷所給的三條邊是否能夠組成三角形,若可以組成三角形,則判斷該三角形是什么類(lèi)型,并求三角形的面積。

相關(guān)知識(shí):

三角形是由同一平面內(nèi)不在同一直線上的三條線段‘首尾'順次連接所組成的封閉圖形。常見(jiàn)的三角形按邊分有普通三角形(三條邊都不相等),等腰三角(腰與底不等的等腰三角形、腰與底相等的等腰三角形即等邊三角形)

不等邊三角形:不等邊三角形,數(shù)學(xué)定義,指的是三條邊都不相等的三角形叫不等邊三角形。

等腰三角形:等腰三角形(isosceles triangle),指兩邊相等的三角形,相等的兩個(gè)邊稱(chēng)為這個(gè)三角形的腰。等腰三角形中,相等的兩條邊稱(chēng)為這個(gè)三角形的腰,另一邊叫做底邊。兩腰的夾角叫做頂角,腰和底邊的夾角叫做底角。等腰三角形的兩個(gè)底角度數(shù)相等(簡(jiǎn)寫(xiě)成“等邊對(duì)等角”)。等腰三角形的頂角的平分線,底邊上的中線,底邊上的高重合(簡(jiǎn)寫(xiě)成“等腰三角形的三線合一性質(zhì)”)。等腰三角形的兩底角的平分線相等(兩條腰上的中線相等,兩條腰上的高相等)。等腰三角形底邊上的垂直平分線到兩條腰的距離相等。等腰三角形的一腰上的高與底邊的夾角等于頂角的一半。等腰三角形底邊上任意一點(diǎn)到兩腰距離之和等于一腰上的高(需用等面積法證明)。等腰三角形是軸對(duì)稱(chēng)圖形,(不是等邊三角形的情況下)只有一條對(duì)稱(chēng)軸,頂角平分線所在的直線是它的對(duì)稱(chēng)軸,等邊三角形有三條對(duì)稱(chēng)軸。等腰三角形中腰的平方等于高的平方加底的一半的平方。等腰三角形的腰與它的高的關(guān)系,直接的關(guān)系是:腰大于高。間接的關(guān)系是:腰的平方等于高的平方加底的一半的平方。

等邊三角形:等邊三角形(又稱(chēng)正三角形),為三邊相等的三角形,其三個(gè)內(nèi)角相等,均為60°,它是銳角三角形的一種。等邊三角形也是最穩(wěn)定的結(jié)構(gòu)。等邊三角形是特殊的等腰三角形,所以等邊三角形擁有等腰三角形的一切性質(zhì)。

直角三角形:有一個(gè)角為直角的三角形稱(chēng)為直角三角形。在直角三角形中,直角相鄰的兩條邊稱(chēng)為直角邊。直角所對(duì)的邊稱(chēng)為斜邊。若a的平方+b的平方=c的平方,則以a、b、c為邊的三角形是以c為斜邊的直角三角形(勾股定理的逆定理)。

判斷三條線段能否組成三角形的依據(jù)是三角形三邊關(guān)系的定理:“三角形任何兩邊的和大于第三邊”和它的推論:“三角形任何兩邊的差小于第三邊”。

計(jì)算面積方式:使用邊長(zhǎng)進(jìn)行計(jì)算

1:計(jì)算三角形的半周長(zhǎng)。半周長(zhǎng)等于圖形周長(zhǎng)的一半。想算出三角形的半周長(zhǎng),需要先將三角形的三條邊長(zhǎng)加起來(lái)求出周長(zhǎng),然后乘以1/2;

2:用海倫公式求三角形面積。海倫公式如下:

具體實(shí)現(xiàn)和分析:

通過(guò)輸入三角形的三條邊,首先判斷兩邊之和是否大于第三邊,若大于第三邊則進(jìn)一步判斷該三角形是什么三角形,3邊相等為等邊三角形,兩邊相等為等腰三角形,滿足兩邊平方之和等于第三邊的平方即是直角三角形,其余為普通三角形,否則輸入的三角形不能夠組成三角形。

void decideTrangleType(){ 
 
  float a,b,c; //定義 a,b,c為三條邊 
  float s,area; 
   
  printf("請(qǐng)輸入三角形的三條邊:\n"); 
  rewind(stdin);//清空緩存區(qū)的所有數(shù)據(jù) 
  scanf("%f%f%f",&a,&b,&c); 
   
  if (a+b>c && b+c>a && a+c>b) {     //判斷兩邊之和是否大于第三邊 
    s = (a+b+c)/2;           //計(jì)算半周長(zhǎng) 
    area = sqrt(s*(s-a)*(s-b)*(s-c)); //計(jì)算三角形面積 
    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("不能構(gòu)成三角形\n"); 
  } 
} 

相關(guān)測(cè)試數(shù)據(jù):

Hello, World!
請(qǐng)輸入三角形的三條邊:
3 45
面積是:6.000000直角三角形

3 33
面積是:3.897114等邊三角形

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

3 610
不能構(gòu)成三角形

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

總結(jié)

以上就是本文關(guān)于C語(yǔ)言輸入三角形邊長(zhǎng)判斷其類(lèi)型并輸出面積實(shí)例代碼的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專(zhuān)題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

上一篇:C語(yǔ)言銀行儲(chǔ)蓄系統(tǒng)源碼

欄    目:C語(yǔ)言

下一篇:如何讓C++函數(shù)返回值死心塌地為你工作

本文標(biāo)題:C語(yǔ)言輸入三角形邊長(zhǎng)判斷其類(lèi)型并輸出面積實(shí)例代碼

本文地址:http://www.jygsgssxh.com/a1/Cyuyan/952.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有