为了账号安全,请及时绑定邮箱和手机立即绑定

函数变量使用问题

#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;

    int getGirth(a,b,c);

    int cirf=getGirth(a,b,c);

    printf("三角形的周长是:%d\n",cirf);  //调用周长函数

    return 0;

}

上面代码中2个cirf函数名都一样有什么区别吗

正在回答

4 回答

这2个都是局部变量,也就是说int cirf = a+b+c ;     //这个cirf只能在函数内部调用getGirth里的只能在这个函数中使用

int cirf=getGirth(a,b,c);这个只能在main函数使用,你也可以不用这个变量名,这里使用和上面一样的只是方便你理解

0 回复 有任何疑惑可以回复我~
#1

竹天一 提问者

非常感谢!
2015-12-11 回复 有任何疑惑可以回复我~

这是调用函数的问题,上面那个函数吧cirf的值调用给主函数,相当于你叫一个人给你买东西,他买回来给你

0 回复 有任何疑惑可以回复我~

在函数里面返回了cirf的值 在主函数里面 就得到了这个值int cirf=getGirth(a,b,c);

0 回复 有任何疑惑可以回复我~

一个是形参,一个是实参呀!参数名称可以不一样的,这些都没什么太大的影响。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       924520    人
  • 解答问题       20762    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

函数变量使用问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信