- 1、本文档共102页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 函数实现模块化程序设计
第7章 函数实现模块化程序设计 7.1 为什么要用函数 问题: 如果程序的功能比较多,规模比较大,把所有代码都写在main函数中? 主函数变得庞杂、头绪不清,阅读和维护变得困难 程序中要多次实现某一功能,需要多次重复编写实现此功能的程序代码? 程序冗长,不精炼 7.1 为什么要用函数 解决的方法: 模块化程序设计 将软件系统分为若干个功能相对独立的模块,各模块独立编程,再将各模块连接、组合成软件系统 C语言的程序模块称为“函数” 7.1 为什么要用函数 在设计一个较大的程序时,往往把它分为若干个程序模块,每一个模块包括一个或多个函数,每个函数实现一个特定的功能 C程序可由一个主函数和若干个其他函数构成 主函数调用其他函数,其他函数也可以互相调用 同一个函数可以被一个或多个函数调用任意多次 函数概述 C语言的程序模块称为“函数” 函数是一段程序,有名字有内容,有返回值,需要调用才能被执行到。 C函数分类: 标准库函数 用户自定义函数 main()函数 函数概念 1. 函数是指完成一个特定工作的独立程序模块。 2. C程序由一个main()和若干个其它函数构成。 3. 程序中一旦调用了某个函数,该函数就会完成一些特定的工作,然后返回到调用它的地方。 函数经过运算,得到一个明确的运算结果,并需要回送该结果。例如,求两数最大值函数c=max(a,b); 函数完成一系列操作步骤,不需要回送任何运算结果。 函数使用常识 1.C程序执行总是从main函数开始,调用其它函数后总是回到main函数,最后在 main函数中结束整个程序的运行。 2.一个C程序由一个或多个源程序文件组成——可分别编写、编译和调试。 3.一个源文件由一个或多个函数组成,可为多个C程序公用。 4.所有函数都是平行的、互相独立的,即在一个函数内只能调用其他函数,不能再定义一个函数(不能嵌套定义)。 5.一个函数可以调用其他函数或其本身,但任何函数均不可调用main函数。 函数分类 库函数、用户自定义函数 有参、无参函数 有返回值、无返回值函数 7.2 定义函数 7.2.1 为什么需要定义函数 C语言要求,在程序中用到的所有函数,必须“先定义,后使用” 指定函数名字、函数返回值类型、函数实现的功能以及参数的个数与类型,将这些信息通知编译系统。 定义函数需要的内容 指定函数的名字,以便以后按名调用 指定函数类型,即函数返回值的类型 指定函数参数的名字和类型,以便在调用函数时向它们传递数据 指定函数的功能。在函数体中书写语句实现指定功能 库函数使用 对于库函数,程序设计者只需用#include指令把有关的头文件包含到本文件模块中即可 程序设计者需要在程序中自己定义想用的而库函数并没有提供的函数 7.2.2 函数定义 一般格式 函数定义的说明 1. 函数定义不允许嵌套。函数是平行的,独立的 2.函数头 返回类型说明:表明函数返回值的数据类型。无返回值需要明确说明void 函数名:标识符 函数参数:变量定义列表。每个变量都需要类型说明,以,相分隔 3.{ }中是函数体,函数内部使用的变量定义放在{ }内。实现函数的功能。 7.3 调用函数 7.3.1 函数调用形式 函数名(实参表); 实参:可为常、变量、表达式,个数与形参相同。 函数调用时要进行值传递,实参的值传给对应的形参。 函数的调用方式 (1)语句调用方式 printstar(); (2)表达式调用方式 z=max(a,b)*2; (3)作为函数参数的调用方式 z=max(max(a,b),c); printf(%2d!=%d\n,fun(i)); 7.3.2 函数调用时的数据传递 形式参数和实际参数: 形参:定义函数时书写于()内的变量名 实参:调用时给出的一个确切的值。 参数值传递:函数调用时实参的值传给对应形参,称为参数值传递。形参必为变量,实参要有确定的值。 函数间通过参数传递数据。 相关说明 1. 形参出现在函数定义中,只能在函数体内使用。 2. 形参变量在未进行函数调用时,不占内存,发生调用时,才分配内存单元,接收实参值。调用结束,形参变量被释放。 3. 形参、实参各占独立的内存单元,调用时单向值传递。 4. 实参与形式类型不一致,传值时自动类型转换。 7.3.3 函数调用的过程 程序从主函数main开始执行 发生函数调用,主函数被暂停执行,转向执行相应的函数 创建形参变量,实参传值给形参 执行函数体程序 函数执行完成,返回主函数,然后再从原先暂停的位置继续执行。 函数遇return或最后的大括号,返回主函数 7.3.4 函数返回值 函数执行后返回到主调函数的计算结
您可能关注的文档
最近下载
- 中国通讯电缆行业市场前景预测及投资战略研究报告.docx
- 国网公司科技项目可行性研究报告.docx
- 2024年芜湖职业技术学院单招职业适应性测试题库新版.docx
- 2024届高考语文复习:(议论文、小说、古诗词、修辞手法等答题规范)课件.pptx
- 1.广东省高职院校高水平专业群建设项目申报书(计算机应用技术专业群).doc VIP
- 预算绩效评价工作方案.docx VIP
- 人力资源管理概论第5版全套PPT课件-人大董克用.pptx VIP
- 2025年中国财富管理市场供需现状及投资战略研究报告.docx
- 2024年加油站岗位工作人员安全知识考试题(含答案).pdf
- 【校本课程教材】物理学史教材.pdf
文档评论(0)