
【C语言】函数定义、参数、调用、嵌套调用、链式访问、声明、递归
目录
1. 函数定义
2. 函数参数
2.1 实际参数(实参)
2.2?形式参数(形参)
3. 函数调用
3.1 传值调用
3.2 传址调用
3.3 写一个函数,每调用一次这个函数,就会将num的值增加1
3.3.1 使用传值调用
3.3.2?使用传址调用
4. 函数的嵌套调用
5. 函数的链式访问
6. 函数声明
6.1 函数定义在使用之后
6.2 分文件书写
7. 函数递归
7.1 递归的定义
7.2 递归的必要条件
7.3 按照顺序输出无符号整数的每一位
函数头(function header):int max(int x, int y)
返回类型(return type):int——函数返回值的类型函数名(function name):max形参声明(parameter type list):int x, int y 函数体(function body):{}内部为函数体。仅在某个函数中使用的变量,原则上应在该函数中声明和使用。但要注意不能声明和形参同名的变量,否则会发生变量名冲突的错误。
真实传给函数的参数,叫实参。实参可以是:常量、变量、表达式、函数等。无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形参。
形式参数是指函数名后括号中的变量,因为形式参数只有在函数被调用的过程中才实例化(分配内存单元),所以叫形式参数。形式参数当函数调用完成之后就自动销毁了。因此形式参数只在函数中有效。形参实例化之后其实相当于实参的一份临时拷贝。
形参和实参可以同名,它们之间相互独立、互不影响。因为实参在函数外部有效,而形参在函数内部有效。
函数的形参和实参分别占有不同内存块,对形参的修改不会影响实参。
传址调用是把函数外部创建变量的内存地址传递给函数参数的一种调用函数的方式。这种传参方式可以让函数和函数外边的变量建立起真正的联系,也就是函数内部可以直接操作函数外部的变量。
嵌套调用是指在一个函数调用另外一个函数。函数可以嵌套调用,但是不能嵌套定义。
链式访问是指把一个函数的返回值作为另外一个函数的参数。
只有后面定义过的函数才能调用前面定义过的函数,如果函数定义在后面,需要在函数调用前进行函数声明。
函数定义在使用之前:
函数定义在使用之后:
max.h:
max.c:
test.c:
程序调用自身的编程技巧称为递归( recursion)。递归作为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。
存在限制条件,当满足这个限制条件的时候,递归便不再继续每次递归调用之后越来越接近这个限制条件 假设输入1234,输出1 2 3 4
思路:
print(1234)
print(123) 4
print(12) 3 4
print(1) 2 3 4
1 2 3 4
最近更新影视资讯
- 韵府群玉
- 老年临终关怀护理集锦9篇
- 如何评价剧场版动画《和谐(harmony/ハーモニー)》原作:伊藤计划 ?
- 智人战胜尼人的决定性因素 是神灵崇拜与艺术品 在3万7千年前智人击败了远比自己强
- 沈阳参考消息(2017年1月11日)
- 密集架区密集架书库图书馆负一楼期刊阅览区中外文期刊图书馆一楼图书借阅区(A-H
- 费维光:脾胃病17方
- 土耳其身为伊斯兰国家,为什么允许“风俗产业”合法化?
- 高中教师教学反思
- 三观尽毁!90后公务员出轨50岁女上司,聊天言语暧昧,妻子怒举报
- 22应用心理学考研347 首师360有调剂院校吗?
- 铃木凉美女士,你仍期待同时收获怜爱与尊敬吗?
- 团建别墅 | 确认过眼神,是能疯一起的人!Boss,今年年会我们泡私家温
- 《归来》观后感
- 翻译伦理的重要性和译者荣辱观建设研究
- 高二语文期末考试测试题及答案
- 国医大师名单!在北京看中医该找谁,这下全知道!
- 这些年爱过的同人文(BG)
- 荷兰深陷风俗业?日本都要甘拜下风,为何能稳坐世界顶尖位置!
- 戴安娜25年前私密录像首次解密:自述性生活,全英国都被炸懵逼了
- 原创上官婉儿为什么必须死,她做的这件事太无耻,李隆基忍无可忍
- 「医药速读社」Paxlovid临床失败 礼来斥巨资引进Kv1.3抑制剂
- 她是韩国性感女神,靠出演“三级片”走红,今41岁韵味不减当年!
- 电影市场有望点燃 好莱坞大片排队上映
- 评荐《传染病(Contagion)》