第六章_函数与编译预处理ppt课件.ppt

第六章_函数与编译预处理ppt课件.ppt

ID:58678393

大小:55.00 KB

页数:45页

时间:2020-10-05

第六章_函数与编译预处理ppt课件.ppt_第1页
第六章_函数与编译预处理ppt课件.ppt_第2页
第六章_函数与编译预处理ppt课件.ppt_第3页
第六章_函数与编译预处理ppt课件.ppt_第4页
第六章_函数与编译预处理ppt课件.ppt_第5页
资源描述:

《第六章_函数与编译预处理ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第六章函数与编译预处理函数的概念、定义、调用(重点和难点)变量的作用域、变量的存储方式编译预处理6.1函数的概念在前面几章的学习过程中,我们所介绍的所有的C语言程序都是由一个main函数组成的,但实际上,一个C程序一般情况下都是由一个main函数和若干个其它函数组成,main函数称为主函数。函数的概念:书本上没有给出函数的具体、规范的概念,一般说来,函数可以描述成“实现一定功能的程序模块”。先看两个C程序的实例,这两个程序都是由一个主函数(即main函数)和若干个其它函数组成的。例1:main(){printstar();print_message();printstar();}pri

2、ntstar(){printf(“****************”);}print_message(){printf(“hello,world!”);}例2:main(){intx,y,z;scanf(“%d,%d”,&x,&y);z=sum(x,y);printf(“theresultis%d”,z);}intsum(inta,intb){intc;c=a+b;returnc;}由上面两例可知:(1)一个C程序一般由一个或多个函数组成,其中有且仅有一个main函数。(2)C程序执行时,总是从main主函数开始,又在main函数中结束。(3)每个其他函数都能实现一定的功能

3、,在main函数中可以调用其他函数,其他函数也可以相互调用,但其他函数不可以调用main函数。(4)从用户使用角度看,C程序中的函数可以分为两大类:库函数和用户自定义函数。(5)从函数的定义和使用形式看,函数分为两大类:有参函数和无参函数。6.2函数的定义6.2.1无参函数的定义形式类型说明符函数名(){变量说明部分;语句执行部分;}其中,类型说明符可以省略不写,例如main函数定义时。类型说明符说明的是函数返回值的类型,若函数没有需要带回的值,则类型说明符可以省略,也可以写成void。如:main函数可以定义如下:voidmain(){……}6.2.2有参函数的定义类型说明符函数名(

4、形式参数列表){变量说明部分;语句执行部分;}函数的参数无参函数在定义和使用时,都不需要任何参数,但是函数名后面的一对圆括号不能省略。有参函数的参数一般指的是该函数的操作对象;参数可分为两类:形式参数(简称形参)和实际参数(简称实参)。形参是指函数定义时函数名后圆括号内的变量,一般代表该函数的形式操作对象。实参指的是函数调用时函数名后圆括号内的变量,一般代表该次函数调用的实际操作对象。例如:P108例6.2对形参和实参的几点说明:(1)形参只有在函数被调用时才分配内存单元,调用结束即释放。(2)实际参数可以是常量,变量和表达式形式,但要求使用时有确定值,形参只能是变量。(3)函数定义时

5、,必须说明形参类型。(4)形参和实参在数量、类型、顺序上要求严格一致。(5)C语言规定,实参对形参的数据传递是“值传递”,即“单向传递”,即只能是实参把值传递给形参,形参操作后的值不能传回给实参。例如:main(){inta=3,b=4;swap(a,b);printf(“%d,%d”,a,b);}voidswap(intx,inty){intz;z=x;x=y;y=z;}分析程序执行后的结果。3,46.3函数的返回值有时,主调函数调用了一个被调用函数后,希望该函数(被调用函数)运行完时,把运行结果带回来,这里运行结果就是被调用函数的返回值。如果,函数被调用后需要返回一个数据值给主

6、调函数,则在该函数定义时,应说明函数返回值的类型。如果不需要返回数据值给主调函数,则该函数定义时,可以省略函数返回值类型,也可以用void明确表示不需返回值。对函数返回值作些说明:(1)函数值的返回时通过在函数中使用return语句来实现的。return语句的一般形式为:return表达式;或者return(表达式);return语句一旦被执行,除了会将后面的表达式的具体值带回给主调函数,程序流程也会随之回到主调函数中去运行,本次被调用函数的执行过程结束.(2)return语句中的表达式类型与函数定义时函数的类型说明符应一致,若不一致,以定义时的类型为准,自动进行类型转换。例如:设计一

7、个用户自定义函数,用于求出某一个正整数的阶乘值,具体正整数应由主函数给出,求得的阶乘值也应在主函数中输出。分析:该用户自定义函数的功能是对某一个整数求阶乘。(1)因为具体整数得由主函数传递过来,所以,该函数应设计为有参函数,且只需一个整型参数。(2)因为求得的阶乘值也应在主函数中输出,所以,应将求得的阶乘值返回给主函数,故该函数有返回值。(3)因为需要求阶乘的整数稍大一些,结果就会超出整型变量能表示的取值范围,所以,为了防止溢出情况出现,返回值

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

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

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