C++程序设计案例教程 刘玉山 第5章 函数新.pptVIP

C++程序设计案例教程 刘玉山 第5章 函数新.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 函数 学习目标 1)了解函数指针和递归函数的使用。 2)理解变量作用域和生存期的概念。 3)掌握函数的一般用法。 第5章 函数 5.1函数的定义 5.2 函数的声明 5.3 函数的调用 5.4 函数参数 5.5 函数指针 5.6 内联函数 5.7 递归函数 5.8 变量作用域与生存期 5.1函数的定义 任务1:对上一章中的一个求课程平均分的函数如下面所示进行分析,说明一个完整的函数定义应该包括哪几部分。 1 float avg(float A[],int n){ //A[]用来存储学生的成绩, //n用来存储学生的人数 3 float total=0.0f; 4 for(int i=0;in;i++){//变量i对应着学生的学号 5 total+=A[i]; 6 } 7 return (total/n); 8 } (1)任务描述 针对上面提供的函数进行分析,说明定义一个完整的函数应该最少包括哪些部分? (2)任务分析 那么返回类型对于上面的函数,我们知道它的功能是完成通过从外界传递进来的课程成绩求平均分。其中数组A[]用来接收课程成绩,而n表示学生的个数。所以这些参数不能少。 函数名称avg作为调用的标识符号和“()”作为函数的标识也不能少。 (2)任务分析 可以省略吗?当然也不能,通过返回类型,我们才能知道返回值的需要存放在什么数据类型的接收变量中,同时也才能让编译器检查返回值是否符合类型规则。 为了完成该函数的功能,这里在参数后的一对大括号“{}”中,存放了求平均分的功能语句。 (3)任务实现 从上面的分析可以知道,上面函数的定义,主要包含四部分:返回类型、函数名称、参数列表和函数体。 (4)要点总结 1)函数的返回类型反映了返回值的存储格式。 2)函数的参数列表反映了该函数与外界进行交互的接口。 (5)涉及到知识点 函数的定义:C++中对一个函数定义格式如下: 〈返回类型〉 〈函数名〉 ([〈参数列表〉]) 〈函数体〉 从定义的格式可以知道: 1)参数列表是可选的,是以逗号分开的变量列表,将接收传递给函数的任何参数。 2)返回类型、函数名和函数体是必须的。 3)一对小括弧“()”是函数的标识,也是必不可少的。 5.2 函数的声明 任务2:对下面的程序文件,当编译的时候,系统提示:“第四行中max没有声明。第十行中重复定义了”。请说明原因,并改正。 1 #include iostream 2 using namespace std; 3 int main(int argc, char* argv[]){ 4 max(3,5); 5 return 0; 6 }; 7 int max(int a, int b){ 8 if (ab) return a; 9 else return b; 10 } (1)任务描述 在上面的程序中,确实定义了max函数,而为什么系统提示没有找到该函数的定义? (2)任务分析与设计 当编译该程序的时候,编译的顺序是从第一行开始的,直到最后一行。对于每一行编译的顺序是从左向右的。当编译到第四行代码的时候,由于在那时编译器还没有得到该max函数定义的信息。自然的就会报告错误信息了。虽然在第七行处有对该max函数的定义,可惜的是,编译器那时还不知道该max函数定义的信息。 (2)任务分析与设计 如果在编译器编译到第四行之前,系统就知道了该函数的定义信息,那么此处的编译错误信息就不应该出现。 (3)任务实现 1 #include iostream 2 using namespace std; 3 int max(int a, int b); 4 int main(int argc, char* argv[]){ 5 max(3,5); 6 return 0; 7 }; 8 int max(int a, int b){ 9 if (ab) return a; 10 else return b; 11 } (4)要点总结 1)函数声明是针对编译器的,是对编译器的提示。告诉编译器函数的返回类型、名称和形参表构成,以便编译系统对函数的调用进行检查。 2)函数声明一般放在调用该函数之前。 (5)涉及到知识点 函数声明也称函数原型,其声明的一般格式为: 返回类型 函数名 ([形式参数表]); 注意,函数声明末尾处的“;”,不能省略。 5.3 函数的调用 任务3:求一个班级内期末C++成绩的最高分。 (1)任务描述 求一个班级内期末C

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档