求解輸出問題。最好詳細解釋一下,謝謝
#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 ; ? ? //計算三角形周長
? ? ? cirf = a + b + c ;
? ? ? return cirf;
? ? }
? ? ? ?
}
int main()
{
? ? int a, b, c;
? ? a = 11;
? ? b = 4;
? ? c = 5;
? ? printf("三角形的周長是:%d\n", getGirth(a, b, c)); ?//調用周長函數
? ? return 0;
} ? ? ??
結果是 ? ? ? ? ? ? ? ? ?不構成三角形
? ? ? ? ? ? ? ? ? ? ? ? ? ? 三角形的周長是:0 ? ?
?為什么結果不是 ? ?三角形的周長是:不構成三角形
? ? ? ? ? ? ? ? ? ? ? ? ? ? 0
2016-07-29
在調用函數getGirth時如果if()成立首先執行printf("不構成三角形\n");,之后返回 0,main函數中printf("三角形的周長是:%d\n", getGirth(a, b, c)); ??getGirth(a, b, c)=0,