- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
教学目标 (1) 了解函数在程序设计中的作用; (2) 掌握函数的定义方法; (3) 掌握函数调用和参数传递的机制和方法; 基本内容 5.1概述 5.2 函数的定义和调用 5.3 函数间参数传递 模块化程序设计★ 结构化程序设计的基本方法★ 应用分析:自顶向下、逐步细化 功能划分:模块化 数据联系:模块间的联系要简单、没有耦合 C++支持结构化软件开发的基础:函数 模块用函数实现 数据联系:函数与函数之间通过输入参数和返回 值来联系 5.1 函数概述★ C++语言程序的结构特点: 程序整体由一个或多个称为函数的程序块组成 每个函数都具有各自独立的功能和明显的界面. 5.1 函数概述★ 函数是构成程序的基本模块,每个函数完成一个计算或执行一个特定动作,具有相对独立的功能。 通过函数,可以把一个复杂任务分解成为若干个易于解决的小任务。充分体现结构化程序设计由粗到精,逐步细化的设计思想。 C/C++提供三种类型的函数: 主函数main( ):每个project(工程或项目)有且只有一main(), 由操作系统调用。 main()主函数程序执行的入 口,相当于总调度,依次调用其余子函数实现各个功 能。 标准库函数: 由编译系统提供,完成基本功能。 用户自定义函数:完成用户的其它功能。包括无参函数、有参函数 5.2 函数的定义和调用 5.2.1 函数的定义 5.2.2 函数的调用 5.2.3 函数声明 5.2.1 函数的定义 ★ 函数必须先定义,后使用。 定义函数的一般格式为: 函数类型 函数名(形式参数表) { 说明语句; 执行语句; return 表达式; } 函数类型★ 函数类型:即调用该函数后所得到的函数值的类型,它由函数体内部的return语句提供。 return 表达式; return语句提供的表达式的值类型必须与函数类型一致。 如果某一函数确没有返回值,则使用说明符void。 例如:主函数的另一种形式 void display() { … … } 注意:这时函数中不能出现有返回值的return语句。 形式参数说明★ 形式参数表 (形参 )表示将从调用函数中接收哪些类型的数据。每个形参都由数据类型和名称构成。但此时的形参只有类型和个数的概念,没有实际值。多个形参间以逗号间隔,无形参时圆括号内使用void关健字。 参数说明格式为: 变量类型 形参1,变量类型 形参2,…,变量类型 形参n 例: int array[], int count, doulbe distance 函数体★ 函数体本身是一个分程序,由语句和其他分 程序组成。语句分为说明语句和执行语句两类。 对某具体变量来说,应先说明,后使用。 界定函数体的花括号后不能使用分号。 若函数体中没有任何语句则称为 空函数。 5.2.2 函数的调用★ 函数要先定义,后调用。 调用函数时要考虑到函数本身的参数: 调用标准库函数时,要包含相应的头文件 输入/输出函数 iostream 字符串函数 cstring 常用数学函数 cmath 函数名( 实际参数列表) ; 例5-1 求阶乘n! ★ 算法分析: 计算公式为: n!= n×(n-1)×…×3×2×1, 且0!=1 此函数只需传入一个表示整数运算对象的数据,故设一个形式参数n 函数的计算结果要返回主调函数,故设一个变量result n的阶乘结果可由一重循环来求得 思考问题 求累加和的函数 函数间的信息交换★ 调用函数和被调用函数之间的信息交换是通过参数的结合和return语句来实现的。 数据流程是: 在调用函数中,先给实参赋值 通过函数调用,将实参数据从调用函数带到被调用函数的形参 形参带值后,被调用函数即可进行相应的数据处理 如果有返回值,通过return语句带回到调用函数 5.2.3 函数声明★ 函数(原型)声明 将某函数的定义放在调用它的函数之后时,必须在被调用到之前对该函数先做说明(声明) 函数声明的一般格式为: 函数类型 函数名 ( 形式参数表 ); 例 5-2:函数声明的使用——绝对值函数 #include iostream using namespace std; int abs(int x); // 函数声明 int main() // 主函数 { in
文档评论(0)