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

这样不行吗

#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;
    getGirth(a,b,c);
    printf("三角形的周长是:%d\n", cirf);  //调用周长函数
    return 0;
}


正在回答

2 回答

你这个主函数输出那里不能直接写cirf,返回的值是给了getGirth()函数,不能直接带过来给局部变量cirf。所以把cirf改成getGirth(a,b,c)就可以了

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

qq_陆离_0 提问者

调用的函数那里不是return给了cirf吗
2017-03-03 回复 有任何疑惑可以回复我~
#2

慕粉1859582227 回复 qq_陆离_0 提问者

对,但是cirf是函数的局部变量,是给了它,但是它带不回来。我是这么理解的。。。
2017-03-03 回复 有任何疑惑可以回复我~
#3

qq_陆离_0 提问者

看了书上的例子,好像是你说的那个意思
2017-03-05 回复 有任何疑惑可以回复我~

把getGirth(a,b,c);写在printf里面和写在外面一样的吗


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

举报

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

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

进入课程

这样不行吗

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