為什么無論能不能構成三角形都會輸出周長?
#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的值