這題cirf好像沒什么用啊 在main函數(shù)中沒出現(xiàn),為什么還會影響輸出結(jié)果
#include <stdio.h>
int getGirth(int a,int b,int c)
{
? ? if( (a+b)<=c || (a+c)<=b || (b+c)<=a )? ?//判斷是否為三角形
? ? {
? ? ? ? printf("不構(gòu)成三角形\n");
? ? ? ? return 0;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? }
? ? else
? ? {
? ? ? int cirf ;? ? ?//計算三角形周長
? ? ? return cirf;
? ? }
? ? ? ?
}
int main()
{
? ? /* 定義三角形三邊長 */
? ? int a, b, c;
? ? a = 3;
? ? b = 4;
? ? c = 5;
? ? printf("三角形的周長是:%d\n", getGirth(a,b,c));? //調(diào)用周長函數(shù)
? ? return 0;
}
2021-08-26
上面定義的周長形參函數(shù)里就包含了if...else{????cirf=a+b+c;return cirf;????},你調(diào)用周長函數(shù)printf("三角形的周長是:%d\n", getGirth(a,b,c));? 就也相當于在滿足abc組成三角形的前提下開始用cirf=a+b+c的邏輯計算周長。
2021-08-26
在自定義函數(shù)int getGirth(int a,int b,int c)中,else后面的語句:?int cirf ;? 應(yīng)該改寫為?int cirf =a+b+c;? 為計算三角形周長,這樣運行結(jié)果才正確。后面的return cirf;的意思是如果輸入的三條邊滿足構(gòu)成三角形的條件,則會輸出該三角形的周長值。