程序运行不是从上到下么,那个return不是在第一次运行过一次了么,运行到主函数又调用了一次? 那第一次是什么意思
前面的return 0;和return cirf;是第一个函数里面的getGirth运行后的return值,这跟第二个函数main函数的return0;是毫不相干的。return返回值是函数的返回值不是整个程序的返回值。
#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;
}
程序一般都是从入口函数开始读,从上到下读取,然后读到函数的时候如果有return 语句,只是取得某个值或者进行数据的处理与当前函数入口没有任何的关系。如果不明白,请贴代码,这样说比较直白易懂。