第5章+函数 C语言大学实用教程课件 苏小红

第5章+函数 C语言大学实用教程课件 苏小红

ID:43509554

大小:1.62 MB

页数:88页

时间:2019-10-09

第5章+函数 C语言大学实用教程课件 苏小红_第1页
第5章+函数 C语言大学实用教程课件 苏小红_第2页
第5章+函数 C语言大学实用教程课件 苏小红_第3页
第5章+函数 C语言大学实用教程课件 苏小红_第4页
第5章+函数 C语言大学实用教程课件 苏小红_第5页
资源描述:

《第5章+函数 C语言大学实用教程课件 苏小红》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第5章函数与程序结构哈尔滨工业大学计算机科学与技术学院苏小红sxh@hit.edu.cnC语言大学实用教程内容提要函数定义、函数调用、函数原型、函数返回值难点:函数的参数传递与返回值全局变量、自动变量、静态变量、寄存器变量难点:变量的作用域与存储类型程序调试结构设计与模块化代码风格问题MoeCurlyLarry程序设计的艺术《三国演义》中有这样一段描写:懿问曰:“孔明寝食及事之烦简若何?”使者曰:“丞相夙兴夜寐,罚二十以上皆亲览焉。所啖之食,日不过数升。”懿顾谓诸将曰:“孔明食少事烦,其能久乎?”此话音落不久,诸葛亮果然病故于五丈原。“事无巨细”,“事必躬亲”管理学的

2、观点是极其排斥这种做法的,认为工作必须分工,各司其职其中的思想,在程序设计里也适用程序设计的艺术C语言为程序的结构提供了两样武器函数和模块函数(function)是结构设计的最基本单位“一个程序应该是轻灵自由的,它的子过程就象串在一根线上的珍珠。”GeoffreyJames的《编程之道》数学函数(1)自变量因变量函数名数学函数(2)一个自变量,一个因变量两个自变量,一个因变量数学函数(3)自变量因变量数学函数(4)一个变量二个变量……N个变量一个变量二个变量……N个变量自变量与因变量的关系数学函数(5)集合A关系集合B程序设计中的函数程序设计中的函数不局限于计算计算类

3、,如打印阶乘表的程序……判断推理类,如排序、查找……用函数解决问题的要点分而治之函数把较大的任务分解成若干个较小的任务,并提炼出公用任务复用程序员可以在其他函数的基础上构造程序,而不需要从头做起信息隐藏设计得当的函数可以把具体操作细节对程序中不需要知道它们的那些部分隐藏掉,从而使整个程序结构清楚MoeCurlyLarryC中的函数(Function)说明:一个源程序文件由一个或多个函数组成。一个C程序由一个或多个源程序文件组成。C程序的执行从main函数开始,调用其他函数后流程回到main函数,在main函数中结束整个程序运行。所有函数都是平行的,即函数定义时是互相独

4、立的,一个函数并不从属于另一个函数。函数的分类标准函数,即库函数目前为止,我们所学习的printf()、scanf()等都是ANSIC标准定义的库函数。任意符合ANSIC的编译器,不管它支持什么平台,都必须提供这些函数供用户使用。用户自定义函数用户按自己的意愿编写自己的函数,完成人员功能。函数的定义变量必须先定义,后使用。函数也一样。函数定义的语法如下:返回值类型函数名(类型参数1,类型参数2,……) {函数体return表达式; }返回值类型与return语句配合当函数执行到return语句时,就中止函数的执行,返回到调用它的地方函数名的命名规则和变量名的命名规则一

5、致。函数的返回值是通过函数中的return语句获得的。函数定义(definition)如果没有参数,则应该用void注明其形如:如果不需要返回值,则应该用void定义返回值类型其形如:函数内部可以定义只能由该函数自己使用的变量,称内部变量。参数表里的变量也是内部变量intFunc(void){…}voidFunc(inti,floatf){…}函数参数函数参数:形参(形式参数):在定义函数时,定义函数名后面括号中的变量名实参(实际参数):在主调函数中调用一个函数,调用函数名后面括号中的参数(或表达式)intAverage(intx,inty){intresult;re

6、sult=(x+y)/2;returnresult;}main(){inta=12;intb=24;intave;ave=Average(a,b);printf(……);}数据传递执行顺序实参形参函数调用(call)从实参到形参是单向值传递调用时会把实参的值分别复制给形参,这个过程就是值传递。调用函数时,必须提供所有的参数(且必须是已赋值的)提供的参数个数、类型、顺序应与定义时相同形式参数实际参数例5.1a计算两个整数的平均数/*函数功能:计算平均数函数入口参数:整型x,存储第一个运算数整型y,存储第二个运算数函数返回值:平均数*/intAverage(intx,in

7、ty){intresult;result=(x+y)/2;returnresult;}例5.1b使用了Average函数的main()main(){inta=12;intb=24;intave;ave=Average(a,b);printf("Averageof%dand%dis%d.",a,b,ave);}intAverage(intx,inty){intresult;result=(x+y)/2;returnresult;}main(){inta=12;intb=24;intave;ave=Average(a,b);printf(……);}数

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

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

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