C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt

C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt

ID:50083577

大小:1.11 MB

页数:41页

时间:2020-03-08

C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt_第1页
C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt_第2页
C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt_第3页
C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt_第4页
C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt_第5页
资源描述:

《C语言程序设计 教学课件 作者 易晓梅 赵芸 第5章 函数.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章函数C语言程序设计第5章函数本章要点函数概述与库函数自定义函数及其参数传递函数的调用函数的嵌套与递归内部函数和外部函数本章学习目标掌握函数的基本用法掌握函数参数传递的本质掌握函数的调用了解函数的嵌套与递归了解内部函数和外部函数5.1函数与C语言的结构C语言函数分成两大类,库函数和用户自定义函数。常见的函数定义的形式如下:类型标识符函数名(形参类型说明表列){函数体;}类型标识符为函数的类型,与return语句返回值的类型相同,可以理解为函数最终的结果的类型。它可以是任何一种有效的类型,当函数类型标识符缺省时默认是整型。如果函数无返回值时,类型

2、标识符为void。函数名要符合C语言规定的标识符的命名规则,函数名字必须唯一,不能与函数体内变量或形式参数名相同。形参类型说明表中的形参用于接受主调函数传递过来的数值。形参的命名只要符合变量的命名规则即可,无需与主调函数中的变量名一致。如果函数不需要从主调函数处接受数据,可以不带形参,此时形参类型说明表是空的,但是函数名后面的圆括号不能省。5.1函数与C语言的结构例5.1计算x的立方#includefloatcube(floatfx){return(fx*fx*fx);}voidmain(){floatfa,product;printf("Pleas

3、einputvalueofa:");scanf("%f",&fa);product=cube(fa);printf("Cubeof%.4fis%.4f",fa,product);}cube函数完成浮点数立方计算。5.1函数与C语言的结构库函数,又称为标准函数,由系统自己提供的,用户不必自己定义这些函数就可以直接使用它们。每个系统提供的库函数的数量和功能不尽相同,当然有一些基本的函数是共同的。在调用标准库函数时,用户在源程序include命令中应该包含相应的头文件。例如:#includeinclude命令必须以#号开头,系统提供的头文件以.h作为文件

4、的后缀,文件名用一对双引号""或一对尖括号<>括起来。【注意】在include命令后面不能加分号。5.2库函数5.2库函数例5.2计算平方根#include#includevoidmain(){doubles;printf("Inputanumber:");scanf("%lf",&s);/*输入一个浮点数*/s=sqrt(s);/*使用库函数sqrt取得平方根*/printf("%lf",s);}5.3自定义函数5.3.1函数定义的一般形式无参函数的定义形式类型标识符函数名(){声明部分;语句;}其中类型标识符和函数名称为函

5、数头。类型标识符指明了本函数的类型,函数的类型实际上是函数返回值的类型。该类型标识符与前面介绍的各种说明符相同。函数名是由用户定义的标识符,函数名后有一个空括号,其中无参数,但括号不可少。5.3.1函数定义的一般形式有参函数定义的一般形式类型标识符函数名(形式参数表列){声明部分;语句;}5.3.1函数定义的一般形式例5.3输入2个数,求其中的较大者并输出。#includeintmax(inta,intb){if(a>b)returna;elsereturnb;}voidmain(){intmax(inta,intb);intx,y,z;printf

6、("inputtwonumbers:");scanf("%d%d",&x,&y);z=max(x,y);printf("maxmum=%d",z);}5.3.2函数参数和函数的值函数的形参和实参具有以下特点:1.形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。2.实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使实参获得确定值。3.实参和形参在数量上

7、,类型上,顺序上应严格一致,否则会发生“类型不匹配”的错误。4.函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。例5.4阅读下面程序,判断程序能否交换主函数中a和b的值。#includevoidmain(){inta=2,b=3;voidswap(inta,intb);swap(a,b);/*a,b是实参*/printf("实参:a=%d,b=%d",a,b);/*输出实参a,b的值*/}5.3.2函数参数和函数的值vo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。