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

来人啊kuailairen

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

}

这个代码中倒数第三行    printf("三角形的周长是:%d\n", getGirth(a,b,c));  //调用周长函数中的getGirth(a,b,c));为何用a,b,c而不是3,4,5????

请大神详细解说一下 谢谢!


正在回答

2 回答

因为第二行定义函数的时候已经定义了形参,所以在下面调用函数的时候:

在参数传递时,实参和形参在数量上,类型上,顺序上应严格一致,否则会发生类型不匹配”的错误。

另外代码写出来是为了用的,你直接在调用函数的时候写3,4,5以后怎么办?用a,b,c可以在外部给abc赋值而不需要直接进去改了

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

上面不是已经赋值了吗?

int a,b,c;

a=3;

b=4;

c=5;






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

一见我就笑 提问者

???
2017-07-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

来人啊kuailairen

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