- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章 函 数 本章教学目标: 掌握自定义函数的一般结构及函数的定义方法;掌握形参、实参、函数原型等重要概念。 掌握函数声明、函数调用的一般方法;了解局部变量、全局变量和变量的存储类型的概念,熟悉auto型和static型局部变量的特点和用法; 熟悉函数嵌套、函数递归的概念;能定义和使用嵌套函数;熟悉一维数组作函数的参数时函数的定义和调用方法。 * * * * * * * * * How do you do! * * * * * * * * * ?引例 在屏幕上显示: main() { printf(* * * * * * * * *\n); printf( How do you do!\n); printf(* * * * * * * * *\n); } 用函数模块设计:main() { printstar(); print_mess(); printstar(); } 8.1 概述 模块化程序设计 基本思想:将一个大的程序按功能分割成一些小模块 特点: 各模块相对独立、功能单一、结构清晰、接口简单 控制了程序设计的复杂性 提高元件的可靠性 缩短开发周期 避免程序开发的重复劳动 易于维护和功能扩充 开发方法: 自上向下,逐步分解,分而治之 函数是C语言的基本构件 函数是C语言的基本构件(续) 函数分类 从用户角度 标准函数(库函数):由系统提供 用户自定义函数 从函数形式 无参函数 有参函数 8.2 函数的定义的一般形式 一般格式 例题 main() {int i; double power(int,float); /*?*/ for(i=1;i9;i++) printf(%4d%20f%20f\n,i, power(i,1.5),power(i,-2.5)); } /*?*/ double power(int n,float x) /*?*/ {int i; double p; p=1; for(i=1;i=n;i++) p=p*x; return(p); } 8.3 函数参数和函数的值 8.3.1 形式参数与实际参数 形式参数:定义函数时函数名后面括号中的变量名 实际参数:调用函数时函数名后面括号中的表达式 8.3.1 形式参数与实际参数 地址传递 方式:函数调用时,将数据的存储地址作为参数传递给形参 特点: 形参与实参占用同样的存储单元 “双向”传递 实参和形参必须是地址常量或变量 总 结 ?形参的有效作用范围是: 在其定义所在的函数内。 ?调用语句中的实参个数等于被调用函数 的形参个数。 ?形参仅在其定义所在的函数被执行时,系统才为其分配存储空间,在退出该函数时该存储空间被系统收回。 ?实参传递给形参的实际值必须与函数定义中的参数类型一致。 8.3.2 函数的返回值 返回语句 形式: return(表达式);或 return 表达式;或 return; 功能:使程序控制从被调用函数返回到调用函数中,同时把返回值带给调用函数 说明: 函数中可有多个return语句 若无return语句,遇 } 时,自动返回调用函数 若函数类型与return语句中表达式值的类型不一致,按前者为准,自动转换----函数调用转换 void型函数用来明确表明函数不带回任何值 例: float div1(float x,float y) { return(x/y);} main() {float div3(); float a,b,c; scanf(%f,%f,a,b); c=div1(a,b); printf(%f\n,c); c=div2(a,b); printf(%f\n,c); c=div3(a,b); printf(%f\n,c); } 8.4 函数的调用 8.4.1 函数调用的一般形式 一般形式 : 函数名(实参表); 说明: 实参与形参个数相等,类型一致,按顺序一一对应 实参表求值顺序,因系统而定(Turbo C 自右向左) 8.4.2 函数调用的方式 函数语句: 例 printstar(); printf(“Hello,World!\n”); 函数表达式: 例 m=max(a,b)*2; 函数参数: 例 printf(“%d”,max(a,b)); m=max(a,max(b,c)); 函数调用形式 函数语句调用、函数表达式
您可能关注的文档
最近下载
- 大型会议会务工作流程清单(培训讲学版).docx VIP
- 零碳园区水资源循环利用方案.docx
- DB35∕T 836-2015 学生服装标准规范.docx VIP
- 心力衰竭病人的护理(完整版) .pptx VIP
- 明配管支吊架的计算表.xls VIP
- 活动一《塑料制品大点兵》课件 沪科黔科版综合实践活动二年级上册.pptx VIP
- 社区教育考试题及答案.doc VIP
- 污水处理优化软件:SuperPro Designer二次开发_(5).设备与物料流管理.docx VIP
- MSS SP-25中文 国外国际规范.pdf VIP
- 医院信息互联互通标准化成熟度测评方案(2025年版).docx VIP
原创力文档


文档评论(0)