- 1、本文档共108页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
在结构化程序设计中,函数是将任务进行模中块划分的基本单位
QQ523458367才智在线旺旺有心诚成QQ523458367才智在线旺旺有心诚成 第三章 函数 第三章 函数 3.1 函数的定义与调用 3.1.1 函数概述 3.1.1 函数概述 3.1.2 函数的定义 3.1.2 函数的定义 2 有参函数 找错误 3.1.3 函数的调用 3.2 函数的参数传递、返回值及函数声明 3.2.1 函数的参数传递及传值调用 课下作业 查找资料,如何向主函数main() 传递参数? 程序举例说明。 3.2.3 函数声明 3.2.3 函数声明 3.3 全局变量和局部变量 3.3.1 变量的存储机制与C++的内存布局 3.3.2 全局变量 3.4 函数调用机制 3.5 作用域与标识符的可见性 块域 块域 函数声明作用域 3 文件作用域 3.6.1 存储类型 3.6.2 生命期 3.6.2 生命期 3.6.2 生命期 3.7 函数的递归调用 3.7 函数的递归调用 探讨: 计算是先右后左。请看下一条输出语句: cout”\n4!=”fac(4) ”\n3!=”fac(3)endl; 先算fac(3), 后算fac(4), 先右后左。但输出还是从左到右: 3 2 1 1 2 6 4 3 2 1 1 2 6 24 4!=24 3!=6 3.7 函数的递归调用 3.7 函数的递归调用 3.8 函数的一些高级议题 3.8.3 内联函数 3.9.2 多文件结构 3.10 编译预处理(选读) 3.10.1 宏定义指令 3.10.2 文件包含指令 3.10.3 条件编译指令 第三章 函数 再见 3.1.3 函数的调用【例3.1】 3.2.1 函数的参数传递及传值调用【例3.2】 3.2.1 函数的参数传递及传值调用【例3.2】 3.2.1 函数的参数传递及传值调用【例3.2】 【例3.4】 输出回文数 【例3.4】 输出回文数 3.3.2 全局变量【例3.5】 3.3.3 局部变量 3.6.1 存储类型 3.6.1 存储类型 3.7 函数的递归调用【例3.13】 3.7 函数的递归调用【例3.13】 3.7 函数的递归调用【例3.13】 3.7 函数的递归调用【例3.14】 3.8.1 函数重载【例3.16】 3.8.2 缺省参数【例3.16】 QQ523458367才智在线旺旺有心诚成QQ523458367才智在线旺旺有心诚成 打印main()中的t=3.5 调用 fun( ) 函数 fun( ) 打印fun()中的t=5 打印main()中的t=3.5 t= 3.5 t = 5 【例3.6】 使用局部变量的例子。 void fun(){ auto int t=5; // fun()中的局部变量,auto可省略 coutfun()中的t=tendl; } int main(){ float t=3.5; //main()函数中的局部变量 coutmain()中的t=tendl; fun(); coutmain()中的t=tendl; return 0;} QQ523458367才智在线旺旺有心诚成QQ523458367才智在线旺旺有心诚成 块域【例3.7】 b= 5 a= 3 3 5 a=3 b=5 a=5 b=3 【例3.7】 输入两数,按从大到小的顺序保存,并输出结果。 结果 栈 t = 3 int main(){ int a,b; //具有函数域 cout输入两整数:endl; cinab; cout“a=a\tb=bendl; if(b=a){ int t; //具有块域 t=a; a=b; b=t; //交换a,b的值 } couta=a\tb=bendl; return 0;} 上述程序若在最后一个cout语句处增加: couttendl; 则编译时会提示错误,因为变量t的作用域只在if语句中,其它地方不可见。 QQ523458367才智在线旺旺有心诚成QQ523458367才智在线旺旺有心诚成 【例3.8】设计函数完成两数交换,用主函数进行测试。 void swap(int,int); int main(){ int a,b; //a,b作用域为main() cout输入两整数:endl; cinab; cout调用前:实
您可能关注的文档
- 远距离多煤时层卸压开采应力——呢裂隙演化规律研究.docx
- 圆口铜鱼义卵巢到发育及卵子发生的初步分析.docx
- 远程风电变流器监控条平台的设计和实是现分析.docx
- 远距离照明综到合保护装置大学设义计说明3720496.doc
- 院系:电气工程系 专业:自动化 对 班级:自控071 学号:0717014024 姓名:冯伟 指导老师:曹立学 基于plc的液位控制系统.ppt
- 岳阳2012年4月分份月报59p.ppt
- 远卓云南百大房地产战略规的划及内部管理提升项目建议书.ppt
- 云顶至尊楼书设计三思路提案.ppt
- 云大《数据结构》课程教学课件-第6章 树和二时叉树(147p).ppt
- 原子力显微镜自动控等制关算法分析.docx
最近下载
- 2024《学前教育法》解读PPT课件.pptx
- 康明发 K280水平关节机器人说明书3.pdf
- 过程控制系统(毕业论文)精馏塔控制系统设计.doc
- 2025年南京市河西新城区国有资产经营控股集团有限责任公司人员招聘笔试模拟试题及答案解析.docx VIP
- 金堂县自来水红旗水库取水工程——原水输水管道复线工程非重大变动环境影响分析.pdf
- 医疗器械的人类受试者临床研究-临床试验质量管理规范(ISO 14155 :2020)中文版.pdf VIP
- 2025年学校体育活动经费预算计划.docx VIP
- 打造企业文化之基助力企业和谐发展.pdf VIP
- 动火作业安全培训.ppt VIP
- BM11_05_BladeEditor.ppt VIP
文档评论(0)