一心只想AC 2022-10-17 18:46 采纳率: 74.6%
浏览 11
已结题

关于定义函数的一些问题

今天刚学习定义函数,定义int max(int a,int b)这个函数时里的a和b必须在main函数里定义吗?还是可以用新的数字表示?比如我main函数里没定义a和b但是我在定义函数是用了a和b可以吗?
这个int max后面的a和b这个形参是不是只是一个符号?代表等会main函数里要比较的两个数啊?
定义函数时前面有时用void是什么意思啊?
感谢回答!

  • 写回答

2条回答 默认 最新

  • qzjhjxj 2022-10-17 19:43
    关注

    定义函数时前面有时用void,void 表示空,定义函数时用 void ,表示函数没有返回值。
    定义int max(int a,int b)函数时,这里的 a b是形参,它的作用域仅在max()函数体内。
    同样的,int main(){int a,b; max(a,b);} 在主函数里定义的 a b ,它的作用域仅在主函数体内.
    下面代码,帮助理解,供参考:

    #include <stdio.h>
    int max(int a,int b)//定义函数形参 a b, 它们的作用域在函数体内
    {                   //这个函数有返回值,所以定义 int max() 。
        if (a > b)
            return a;
        else
            return b;
    }
    int main()
    {
        int a = 2, b = 6;
        printf("max(a,b):%d\n", max(a,b));//调用 max()函数,这里a b是实参
                                          //这里可以看出,形参和实参可以同名,
                                          //但相互不受影响。
        int c = 5, d = 3;
        printf("max(c,d):%d\n", max(c,d));//调用 max()函数,这里c d是实参
    
        return 0;
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 10月17日

悬赏问题

  • ¥15 quartus中lpm_dff
  • ¥15 嵌入式软件电子烟开发
  • ¥15 职场 Excel 查重问题
  • ¥20 multisim方波发生电路产生的波形异常,学校没讲模电就留了实验qwq
  • ¥15 求怎么用idea2021.3.2创建web项目并配置tomcat
  • ¥100 or-tools的相关问题
  • ¥30 怎么烘焙完整模型的法线
  • ¥15 有可能用平板通过拓展坞来烧录程序吗(keil5的那种)
  • ¥15 状态图的并发态问题咨询
  • ¥15 PFC3D,plot