C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt

C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt

ID:50351277

大小:556.50 KB

页数:41页

时间:2020-03-08

C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt_第1页
C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt_第2页
C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt_第3页
C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt_第4页
C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt_第5页
资源描述:

《C语言程序设计 教学课件 作者 曹玲焕 孙萍主编 第七章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章函数1第七章函数一、函数概述二、函数的定义和返回值三、函数的调用四、函数的说明五、局部变量和全局变量六、变量的存储类别七、嵌套调用和递归调用八、函数的存储类型九、函数程序举例主要内容end2一、函数概述C程序结构第七章函数3一个C程序可由一个主函数和若干个函数构成。由主函数调用其他函数。其他函数可以相互调用。同一函数可以被一个或多个函数调用任意多次。基本概念分类从用户使用的角度看:标准函数和用户自定义函数从函数的形式看:无参函数和有参函数第七章函数back4(一)、举例(二)、函数的定义(三)、函数的返回值二、函数的定义和

2、返回值第七章函数back5(一)、举例先来看一个函数使用的例子输入两个数,输出最大值。(判断的两个数的最大值用函数)main(){inta,b,c;c=max(a,b);printf(“Themaxis%d”,c);}intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}函数调用函数定义第七章函数6(二)、函数定义类型标识符函数名(形参列表){声明部分语句部分}intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}函数首部函数

3、体格式int:函数类型max:函数名intx,inty:形参及其定义声明部分:intz;说明函数内部用到的变量。语句部分:if...说明函数的功能return(z)返回函数的结果第七章函数7(三)、函数的返回值1、函数的返回值是通过函数中的return语句获得的。一个函数中可以有一个以上的return语句。只有一个起作用。2、return(z);returnz;3、如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。4、如果被调用函数中没有return语句,一般表示此函数完成一定操作,并不带回任何值。5、为了

4、明确表示“不带回值”,可以用“void”定义“无类型”。第七章函数8例无返回值函数voidswap(intx,inty){inttemp;temp=x;x=y;y=temp;}printstar(){printf("**********");}main(){inta;a=printstar();printf("%d",a);}voidprintstar(){printf("**********");}main(){inta;a=printstar();printf("%d",a);}正确。函数printstar()没有说明类型表

5、示整型,在main()中,语句a=printstar();执行函数调用,因为在函数定义时没有定义返回值,所以返回一个随机整数。运行结果:**********1010就是返回的随机整数。错误!在编译时将提示下列信息:cannotconvertfrom'void'to'int‘即不能将‘void’转换为‘int’举例第七章函数9三、函数的调用(一)、函数调用可以有两种方式(二)、函数的参数传递(三)、函数调用的语法要求第七章函数back10(一)函数调用可以有两种方式函数调用出现在表达式中例:c=max(a,b)是一个赋值表达式函数

6、调用以语句的形式出现例:若调用hello函数,可用以下语句:hello();第七章函数11格式函数名(实参列表)方式1。函数语句printstar()2。函数表达式c=a*max(a,b)3。函数参数m=max(a,max(b,c))main(){inta,b,c;c=max(a,b);printf(“Themaxis%d”,c);}函数调用第七章函数12举例C(m,n)=m!/(n!*(m-n)!)(m>n)main(){floatc;intm,n;floatfac(intx);printf(“inputm,n:”);scan

7、f(“%d%d”,&m,&n);c=fac(m)/(fac(n)*fac(m-n));printf(“Theresultis%8.1f”,c);}floatfac(intx){inti;floatt=1;for(i=1;i<=x;i++)t=t*i;return(t);}inputm,n:53Theresultis10.0第七章函数13(二)、函数的参数传递计算实在参数的值,为形式参数分配存储单元,将实在参数的值传给对应的形式参数。通过return语句将返回值返回到调用处,释放形式参数所分配的内存单元。因此,形参只在函数内部有效

8、,函数调用结束返回主调函数后则不能再使用该形参变量。函数之间还可以通过全局变量传递参数,将在本章后续内容中介绍。在C语言中,数据只能从实参传给形式参数,而不能把形式参数的值传回给实在参数,称为“按值传递”,既单向传递。第七章函数14实际参数与形式参数的关系对应关

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

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

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