- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7.1第七章函数
第七章 函数 函数的分类 7-2 函数定义 函数定义注意事项 1.形式参数表中给出的形式参数名和数量要与形式参数说明中的参数名和数量相同。 要求形式参数表中的形参与形式参数说明中的参数应一一对应。但对于两者的排列顺序没有要求。 2.形式参数表中说明的形式参数只要在形式参数说明中说明一次即可,在函数体中不需再说明,可直接使用。 3.函数体内部的变量说明与形参说明的含义不一样。 前者说明一个局部于函数体的一般变量,后者说明一个用于函数间传送数据的形式变量。 在概念上截然不同,在函数中的作用完全不同。 在函数体内部一般变量与形参的使用方法完全一样。 7-3 函数的调用与返回 函数的调用形式 函数名( 实际参数表 ); 函数调用时实际参数表中给出的变量简称为实参。 实参的数量、类型和排列顺序必须与函数定义时形式参数表中形参的数量、类型和排列顺序一致,不允许任意改变。 函数调用的过程 在一个函数中调用另一个函数时,程序将控制从调用函数处转移到被调用函数,并执行被调用函数。 在执行完被调用函数的所有语句或者遇到return语句时,程序的控制要返回到调用函数中原来调用函数的地方继续执行。 例:计算:C(m,n) = m!/(n!*(m-n)!) main( ) { int m, n; long cmn, facto( ); /* 说明函数facto的类型 */ scanf (%d%d, m, n); cmn = facto(m) / (facto(n) * facto(m-n)); /* 三次调用facto函数 */ printf (The combination is %ld\n, cmn); } long facto (x) /* 定义facto函数。从在源程序中的位置 */ int x; /* 来说,facto函数定义在后,调用在前 */ { long y; for ( y=1; x0; --x ) y *= x; return(y); } 4. 函数调用过程 int plus(int x, int y) {int d; x++; ++y; d=x+y; return d;} main( ) {int a=2, b=3, c; printa( ); c=plus(a, b)+b; printf(“%d,%d,%d\n”,a,b,c); }输出 ? 形式参数x,y 实际参数a,b 2 3 7 aaaaa 2,3,10 void printa( ) { printf(“aaaaa\n”); } 函数调用的执行过程: * * 本 章 要 点 7.1 C程序结构 7.2 函数定义 7.3 函数的调用与返回 7.4 函数间数据传递 7.5 变量的存储属性 7.6 函数的递归调用 7.7 库函数简介 7-1 C程序结构 模块化程序结构 模块1 主模块 模块11 模块2 模块21 模块22 程序的模块化 结构化程序设计方法:采用自顶向下,逐步求精和模块化来进行程序设计。将程序自上而下按功能分解成若干模块,这些模块组成完整的程序。 程序模块相对独立,简化设计,限制错误,控制程序设计的复杂性; 便于集体开发,分工合作,适合大规模系统 开发; 积木式组装,便于模块共享,提高重用性; 易于裁剪、移植和扩充,提高可维护性。 模块化是结构化程序设计的基础。采用模块化程序设计的优越性: C语言支持这种结构化程序设计方法! C语言允许将一个程序写入不同的源文件,一个源文件可以被不同的程序使用; 一个源文件可以由多个函数组成,一个函数可以被位于不同源文件中的其他函数调用; 主函数可以放在任何一个源文件中,程序一定从主函数开始执行。 C程序的结构特点 程序1.EXE 源程序文件1 函数11 函数1m … 源程序文件21 函数21 函数2m … 可以通过工程文件将属于同一个程序的不同源文件组装成一个程序. 程序2.EXE C程序是函数的集合体,每个函数从功能上是独立的。子函数之间可以互相调用或自我调用。 F1 ( ) main ( ) F11 ( ) F2 ( ) F21 ( ) F22 ( ) main( ) { printf(“This is C program\n”); } 主函数main调用了库函数printf printf是一个库函数 函数就是一段程序,完成特定的任务。在程序开发中需要定义若干函数。 例 问题: 如何定义和使用函数!! 从用户的角度可分为: 库函数 用户定义函数 数学函数 #include “ math
您可能关注的文档
- Unit 1 Where is your pen pal from Section B 2 教学课件.ppt
- 2013年秋八上英语Unit5课件A.ppt
- (中考物理复习专题)第四章 力和运动 第二课时 力和物体运动状态的变化.ppt
- 01 第一章 现代社会关注的问题.ppt
- 09年美国大学生数学建模大赛B题outstanding.pdf
- 17-走出社会福利政治经济分析视角误区 高和荣.pdf
- 1,20世纪90年代以来的中国少数民族妇女研究.pdf
- 14、刑罚的裁量.ppt
- 2012届高考政治一轮复习 课时8 财政与税收精品课件 新人教版.ppt
- 1960-2005年湖南省降水的变化.pdf
- 半导体材料性能提升技术突破与应用案例分析报告.docx
- 半导体设备国产化政策支持下的关键技术突破与应用前景报告.docx
- 剧本杀市场2025年区域扩张策略研究报告.docx
- 剧本杀行业2025人才培训体系构建中的市场需求与供给分析.docx
- 剧本杀行业2025年人才培训行业人才培养模式创新与探索.docx
- 剧本杀行业2025年内容创作人才需求报告.docx
- 剧本杀行业2025年区域市场区域剧本市场消费者满意度与市场竞争力研究报告.docx
- 剧本杀市场2025年区域竞争态势下的区域合作策略分析报告.docx
- 剧本杀行业2025人才培训与行业人才培养模式创新.docx
- 剧本杀行业剧本创作人才心理素质培养报告.docx
文档评论(0)