c语言(谭浩强)第08章 函数

c语言(谭浩强)第08章 函数

ID:11301149

大小:419.00 KB

页数:63页

时间:2018-07-11

c语言(谭浩强)第08章 函数_第1页
c语言(谭浩强)第08章 函数_第2页
c语言(谭浩强)第08章 函数_第3页
c语言(谭浩强)第08章 函数_第4页
c语言(谭浩强)第08章 函数_第5页
资源描述:

《c语言(谭浩强)第08章 函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章函数本章学习要点:掌握函数的定义方法;掌握函数的类型和返回值;掌握形式参数与实际参数、参数传递;掌握函数的正确调用,了解函数的递归调用;掌握局部变量和全局变量、变量的存储类型,作用域和生存期;8.1概述函数:英文名为Function,直译为“功能”,“函数”的意思.在C语言里,函数指的是实现一个特定功能的程序模块.它相当于其他语言中的子程序.一个C语言程序可由一个主函数和若干个函数构成,其中主函数是不可缺省的.每个C程序由主函数调用其他函数,其他函数也可以相互调用.在程序设计中,常将一些常用的功

2、能模块编写成函数,放在函数库中供公共选用.main函数a函数e函数f函数g…...…...…...函数b函数h函数I函数J…...…...…...函数c函数K函数L函数M…...…...…...main(){printstar();print_message();printstar();}printstar(){printf(“***********************”);}print_message(){printf(“Howdoyoudo!”);}说明:1)源程序文件可由一个或多个函

3、数组成,其中主函数是不可缺省的.源程序文件是编译单位,函数不是编译单位;2)一个C程序由一个或多个源程序文件组成.较大的C程序,常将一些函数和其他内容分别放在若干源文件中,再由若干源文件组成一个C程序.最简单的情况,一个C程序由一个源程序组成,这个源程序中只包含了一个函数-主函数;3)C程序的执行从main函数开始,在main函数中结束.4)所有函数在定义时是相互独立的,函数之间可以相互引用但不能嵌套定义;函数的分类:1)从用户使用的角度函数可分为:标准函数,即库函数.由系统提供,用户不必定义,直接使

4、用;用户自定义函数.由用户根据需要,自行编写,以解决专门需要;2)从函数的形式分,函数可分为:无参数函数.在调用无参函数时,主函数并不将数据传送给被调用函数,一般用来执行指定的一组操作.无参函数可以带回也可以不带回函数值,一般以后者居多;有参函数.在调用函数时,在主函数和被调用函数之间有数据传递;8.2函数定义的一般形式1.无参函数的定义形式类型标识符函数名(){声明部分语句}其中,用“类型标识符”指定函数值的类型,即函数带回来的类型.无参函数一般不需要带回函数值,因此可以不写类型标识符;2.有参函数

5、定义的一般形式类型标识符函数名(形式参数表列){声明部分语句}例如:intmax(intx,inty){intz;z=x>y?x:y;return(z);}3.可以有“空函数”形式为:类型说明符函数名(){}例如:dummy(){};调用此函数时,什么工作也不做,没有任何实际作用.此中空函数的使用一般用于程序设计的模块设计阶段;4.对形参的声明方式C语言传统声明方式为:对形参类型的声明放在函数定义的第2行,在函数括号外单独指定.传统声明方式:intmax(x,y)intx,y;{intz;z=x>y?

6、x:y;return(z);}现代声明方式:intmax(intx,inty){intz;z=x>y?x:y;return(z);}8.3函数参数和函数的值8.3.1形式参数和实际参数1、形式参数(形参):函数定义时设定的参数。下例中,函数头intmax(intx,inty)中x,y就是形参,它们的类型都是整型。2、实际参数(实参):调用函数时所使用的实际的参数。下例中,主函数中调用max函数的语句是:nmax=max(a,b);其中a,b就是实参,它们的类型都是整型。例8.2调用函数时的数据传递ma

7、in(){inta,b,c;scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“Maxis%d”,c)}intmax(intx,inty){intz;z=x>y?x:y;return(z);}运行情况如下:7,8Maxis8实参a,b形参x,yc=max(a,b);-----------------------实参:在运行时把函数的max(intx,inty)把值传给函数.结果赋给{………函数名returu(z);形参:通知系统}要预留内存位置.关于形参和实参的说明(1)只

8、用在发生函数调用时,形参才被分配内存单元.在调用结束后,形参所占的内存单元也被释放;(2)实参可以是常量,变量或表达式,如:max(3,a+b)但要求它们有确定的值.在调用时将实参的值赋给形参.(3)在被定义的函数中,必须指定形参的类型.(4)实参和形参的类型应相同或赋值兼容,否则会出错;(5)C语言规定,实参对形参变量的数据传递是“值传递”,即单向传递,只能由实参传给形参,而不能由形参传回来.8.3.2函数的返回值通常,希望通过函数调用使主调函数得到一

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

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

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