為什么無論能不能構成三角形都會輸出周長?
#include?<stdio.h>
int?getGirth(int?a,int?b,int?c)
{
????if(?(a+b)<=c?||?(a+c)<=b?||?(b+c)<=a?)???//判斷是否為三角形
????{
????????printf("不構成三角形\n");
????????return?0;????????????????????????????????
????}
????else
????{
??????int?cirf?=?a?+?b?+?c;?????//計算三角形周長
??????return?cirf;
????}
???????
}
int?main()
{
????/*?定義三角形三邊長?*/
????int?a,?b,?c;
????a?=?3;
????b?=?4;
????c?=?5;
????printf("三角形的周長是:%d\n",?getGirth(a,b,c));??//調用周長函數
????return?0;
}
2023-09-08
在自定義函數int getGirth(int a,int b,int c)中,因為無法構成三角形所以return 0相當于將getGirth(a,b,c)賦值為0,你可以將在主函數中的getGirth (a,b,c)理解為一個值為0的字母了,故輸出0,而可以構成三角形的話return cirf就是將cirf的值賦予自定義函數int getGirth(int a,int b,int c),此時getGirth (a,b,c)的值為cirf的值,從而輸出cirf的值