《C语言函数部分》PPT课件

《C语言函数部分》PPT课件

ID:36665117

大小:631.60 KB

页数:66页

时间:2019-05-09

《C语言函数部分》PPT课件_第1页
《C语言函数部分》PPT课件_第2页
《C语言函数部分》PPT课件_第3页
《C语言函数部分》PPT课件_第4页
《C语言函数部分》PPT课件_第5页
资源描述:

《《C语言函数部分》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、函数本章目标理解模块化设计思想掌握函数的定义和调用方法掌握C语言的参数传递方法掌握变量的作用域和存储方式函数是能够完成一定任务的、相对独立的程序段,可以被看作组成一个程序的逻辑单元。函数概述(1)简化程序设计(2)便于调试和维护什么是函数?为什么使用函数?标准函数(库函数)由系统提供的函数,用户不必自己定义,可以直接调用。用户自定义函数根据函数所要完成的功能自己定义函数的格式。函数的分类(从使用角度)5.1函数概述函数概述函数的分类(从函数开式分)无参函数函数调用时,主调函数并不将数据传送给被调函数。有

2、参函数函数调用时,主调函数将数据传送给被调函数函数的定义函数的定义形式{inti;longs;s=1;for(i=1;i<=n;i++)s=s*i;返回s值}fac()函数名intn形参变量longint返回值类型函数体函数的定义返回值类型符函数名([形式参数列表]){函数体}类型符都可是什么?intcharfloatdoublevoid函数名怎么起?标识符命名字母或下划线开头,后面是字母、数字下划线形参列表什么样?可以为空类型 变量多个参数用逗号分隔函数如何返回值?return表达式函数的定义返回值的

3、类型怎样确定?返回值的类型应该与函数类型一致。可以有多条return语句吗?返回值的类型为空类型(void)。可以没有return语句(或return后的表达式为空)吗?执行到哪一条return语句,哪一条起作用。形参变量作为已知值判断下述程序是否能正常编译main(){intr;r=fun(4)%fun(5);}doublefun(intn){returnn*1.0;}Typemismatchinredeclarationoffundoublefun(intn);函数声明函数的定义说明:(1)函数原型

4、声明语句最后的分号不能省略,其作用是表示该语句是进行函数声明而不是函数定义。(2)在原型声明中,形式参数名可以省略。(3)如果被调用函数的定义出现在调用函数之前,可以不对被调用函数进行原型声明。(4)如果被调用函数已在所有函数定义之前进行了原型声明,则在各个调用函数中不必再对该函数进行原型声明。math.h文件中的部分内容int_Cdeclabs(intx);double_Cdeclcos(doublex);double_Cdeclexp(doublex);double_Cdecllog10(doubl

5、ex);double_Cdeclpow(doublex,doubley)double_Cdeclsin(doublex);double_Cdeclsqrt(doublex);标准函数的函数声明#includevoidmain(){printf("%f",sqrt(4));}函数调用与参数传递有参函数调用的格式:函数名(实际参数)无参函数的调用格式:函数名()函数的调用方式main(){……s=max(3,5)+max(5,7);……}说明:(1)函数总是在某个函数体中被调用。(2)函数调

6、用可以在结尾处加上分号,单独作为一条语句。(3)对于有返回值的函数,其调用也可以出现在某条语句或表达式中。函数调用与参数传递printf("%d",fac(3));5函数调用与参数传递函数的调用过程main(){……s=fac(3);……}longfac(intn){inti;longs;s=1;for(i=1;i<=n;i++)s=s*i;returns;}①②③④⑤函数调用与参数传递参数传递longfac(intn);main(){……s=fac(3);……}longintfac(intn){int

7、i;longs;s=1;for(i=1;i<=n;i++)s=s*i;returns;}3intn函数调用和参数传递C语言中的参数传递计算实参的值形参变量如果实参是变量,那么当把值传给形参变量后,如果对应的形参变量值发生变化,会不会影响原实参的值?参数传递。程序代码如下:#includevoidswap(inta,intb);/*声明函数原型*/voidmain(){intx,y;x=10;y=20;swap(x,y);/*调用函数*/printf("%d,%d",x,y);}void

8、swap(inta,intb)/*定义函数*/{intt;t=a;a=b;b=t;}函数调用与参数传递程序输出如下:10,20函数调用与参数传递数组参数一维数组参数定义voidprintarray(inta[]){…..}调用printarray(b);其中b为数组名二维数组参数定义voidprintarray(inta[][4]){…}调用printarray(b)函数调用与参数传递函数的嵌套调用C语言中的函数定义是相互独立的,不允许函数

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

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

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