第七章 函数课题.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章 函数 回顾 本章目标 理解C语言中的函数的作用 掌握用户自定义函数的定义和使用方法 掌握C语言中常用的内置函数的用法 理解函数参数和函数返回值的作用 函数的由来 “函数”一词由德国的数学家莱布尼茨在17世纪首先采用 函数机制的优点 使程序变得更简短而清晰,降低复杂性 提高了代码的重用性 可以提高程序开发的效率 有利于程序维护 函数定义 函数的参数和函数值 (3)实参和形参在数量、类型、顺序上应该严格一致,否则会发生“类型不匹配”的错误。 (4)函数调用中发生的数据传送是单向的。即只能将实参的值传给形参,不能将形参的值反向传给实参,因此,在被调函数执行过程中,形参的值发生了变化,而实参的值不会变化。 函数的返回值 函数的返回值只能通过retuen语句返回给主调函数,其一般 形式如下: Return 表达式;或 return (表达式); 说明: (1)在函数中允许有多个return语句,但每次执行时,只能 有一个return语句被执行,即只能返回一个值。 (2)函数返回值的类型和函数定义中函数的类型应保持一 致,如果不一致,函数返回值应首先转换为函数定义的类型再 进行转换。 函数的返回值 (3)在VC++6.0中,如果函数的返回值为整型,可以省略类 型说明。 (4)不返回函数值的函数,可以用“空类型”定义,类型说明 符为“void”。如例7-2中,函数min()不返回结果值,其类型说 明符就是void,即空类型。 (5)当遇到 return 语句时,函数执行将终止。程序控制流将 立即返回调用函数; 函数的调用 通过在程序中使用函数名称,可以执行函数中包含的语句, 这称为调用函数。 函数调用的一般形式为: 函数名(实际参数表); 函数之间允许相互调用,也允许嵌套调用。 函数还可以自己调用自己,称为递归调用。 函数调用的方式: 1. 函数表达式 例:ans1=cube(a,b,c); 2. 函数语句 例:scanf(“%d”,n); 3. 函数实参 例:printf(“%d”,sum(n)); 函数的原型声明 函数原型说明在形式上与函数头部类似,最后加一个分 号。原型说明中参数表里的参数名可以不写(只写参数类 型)。 例如在例7-2中,如果函数min()定义在主函数之后,则需 要在主函数之前进行原型声明如下: void min(int x,int y); 或者 void min(int ,int ); 或者 void min(int data1,int data2); ...... void perimeter(float r) { printf(请输入圆的半径:); scanf(%f,r); printf(该圆的周长为%f\n,2*3.14*r); } void area(float r) { printf(请输入圆的半径:); scanf(%f,r); printf(该圆的面积为%f\n,3.14*r*r); } 函数嵌套调用 函数的递归调用 一个函数在执行的过程中调用其本身称为函数的递归调用。这样的函数称为递归函数。 数组作为函数参数 1.数组元素作为函数实参 数组元素就是下标变量,它与普通变量并无区别。 因此,它作为函数实参使用与普通变量是完全相同的,在发生函数调用时,把作为实参的数组元素的值传送给形参,实现单向的值传送。 数组名作为函数参数 数组名作为函数参数与数组元素作为参数的情况不同: 数组名作为参数时,实参和形参都应是数组名或者数组地址。数组名作为函数参数,实参数组不是将数组中的所有值传递给形参,而是把实参数组的起始地址传递给形参数组,使形参数组和实参数组共同占用实参数组那段内存单元。 用数组元素作为函数参数进行的传递是单向的值传递,因为数组元素跟普通变量一样,在作为实参时和形参变量各自占用不同的内存空间;而使用数组名作为函数参数进行的传递是双向的地址传递,使实参和形参共同占用同一段内存空间,如果改变该内存空间中的数据,则实参和形参的值都将改变。 变量的存储类别、作用域和生存期 局部变量和全局变量 如果变量定义在函数内部或者复合语句内部,则称该变量为“局部变量”或“内部变量”。 如果变量定义在函数外部,即不包括在任何函数内部,则称为“全局变量”或“外部变量”。 外部变量的作用范围与定义的位置有关,其范围从定义点开始到文件末尾,可以使用extern说明符来扩展全局变量的作用域。 【注意

文档评论(0)

yy556911 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档