根據輸入的三角形的三條邊判斷三角形的類型,並輸出其面積和類型。
算法思想
首先判斷其兩邊之和是否大於第三邊,若大於則判斷可以構成三角形,再進一步判斷該三角形是什么三角形,並計算這個三角形的面積;否則不能構成三角形。
① 從鍵盤輸入三角形的三條邊。
② 判斷兩邊之和是否大於第三邊。
③ 若條件成立則判斷可構成三角形,計算其面積,並判斷其類型;否則判斷其不能構成三角形。
④ 在類型判斷中首先判斷其是否三邊相等,條件成立則判斷其為等邊三角形;否則判斷其是否有兩邊相等,條件成立則判斷其為等腰三角形;否則判斷其是否有兩邊的平方和等於第三邊的平方,條件成立則判斷其為直角三角形;否則判斷其為普通三角形。
程序代碼
#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
三角形是直角三角形
總結
① 在本實訓之前必須知道三角形的相關知識,比如,怎么判斷輸入的三邊是否能構成三角形、三角形的面積計算方法等。
② 要注意邏輯運算符“&&”和“||”的使用,當需要同時滿足多個條件時,使用“&&”運算符;而當只需滿足多個條件中的一個時,使用“||”運算符。

不管你是轉行也好,初學也罷,進階也可,如果你想學編程,進階程序員~
【值得關注】我的 編程學習交流俱樂部!【點擊進入】
