计算机软件及应用五函数ppt课件

计算机软件及应用五函数ppt课件

ID:18825179

大小:752.50 KB

页数:75页

时间:2018-09-20

计算机软件及应用五函数ppt课件_第1页
计算机软件及应用五函数ppt课件_第2页
计算机软件及应用五函数ppt课件_第3页
计算机软件及应用五函数ppt课件_第4页
计算机软件及应用五函数ppt课件_第5页
资源描述:

《计算机软件及应用五函数ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章函数7/12/20211本章要点函数的概念函数的定义与调用函数的递归调用变量的作用域函数的作用域7/12/202125.1概述5.2函数的定义5.3函数的返回值5.4函数的调用5.5函数参数及其传递方式5.6函数的嵌套与递归调用5.7数组作为函数参数5.8变量的存储属性5.9内部函数与外部函数主要内容7/12/202135.1概述模块化程序设计基本思想:大程序按功能分割成小模块特点:各模块相对独立、功能单一、结构清晰、接口简单控制了程序设计的复杂性缩短开发周期避免程序开发的重复劳动易于维护和功能扩充开发方法:自上向下逐步分解分而治之7/12

2、/20214C程序结构C是模块化程序设计语言7/12/20215C是函数式语言必须有且只能有一个main主函数C程序的执行总是从main函数开始在main结束函数不能嵌套定义,可以嵌套调用,但不能调用main程序编译以源程序文件为单位,不以函数为单位7/12/20216从用户角度标准函数(库函数):由系统提供用户自定义函数从函数形式无参函数有参函数使用库函数应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型3、函数返回值意义和类型4、需要使用的包含文件函数分类7/12/20217合法标识符函数返回值类型缺省int型无返回值void函

3、数体函数类型函数名(形参类型说明表){说明部分语句部分}现代风格:5.2函数的定义7/12/202181、无参函数形式例无参函数printstar(){printf(“**********”);}或printstar(void){printf(“**********”);}函数类型函数名(){声明部分语句部分}不能省略7/12/202192、有参函数形式例有参函数intmax(intx,inty){intz;z=x>y?x:y;return(z);}例有参函数intmax(intx,y){intz;z=x>y?x:y;return(z);

4、}函数类型函数名(形式参数表列){声明部分语句部分}7/12/2021103、空函数函数类型函数名(){}注:表明只调用,不做事例空函数dummy(){}函数体为空7/12/202111函数类型函数名(形参表)形参类型说明{说明部分语句部分}传统风格:例传统风格intmax(x,y)intx,y;{intz;z=x>y?x:y;return(z);}7/12/202112返回语句形式:return(表达式);return表达式;return;功能:把值从被调用函数返回到主调用函数5.3函数的返回值7/12/202113说明:函数中可有多个retu

5、rn语句,但只能返回一个值若无return语句,遇}时,自动返回调用函数类型不一致自动转换成函数调用类型void型函数,无return语句不加类型时自动按整型处理从哪里调用仍返回哪个地方例无返回值函数voidswap(intx,inty){inttemp;temp=x;x=y;y=temp;}7/12/202114voidprint()/*void类型,不能有return语句*/{inti;for(i=1;i<=10;i++)printf(“*”);}intf(intn)函数首部{inty=1,i;for(i=1;i<=n;i++)y=y*i;r

6、eturn(y);}函数体例如:7/12/202115voidoutput(intn){inti;for(i=1;i<=n;i++)printf("*");printf("");}voidmain(){intn;output(10);n=20;output(n);n=30;output(n+5);}例没有return,执行到函数末尾从哪里出去,返回到哪里,每次返回的位置不一样7/12/2021165.4函数的调用执行一段子程序并带回值或完成子程序中的操作函数的入口:函数首部函数的出口:retrun语句或函数最后的}注意:不能利用goto插入到

7、函数内,或break中断函数7/12/202117调用形式函数名(实参表);或函数名();说明:实参与形参个数相等,类型一致,按顺序一一对应实参表求值顺序,因系统而定多个实参中间用“,”号分隔7/12/202118#includevoidmain(){intf(inta,intb);/*函数声明*/inti=2,p;p=f(i,++i);/*函数调用*/printf("%d",p);}例实参求值的顺序7/12/202119intf(inta,intb)/*函数定义*/{intc;if(a>b)c=1;elseif(a==b)

8、c=0;elsec=-1;return(c);}7/12/202120如果按自左至右顺序求实参的值,则函数调用相当于f(2,3)如果按自

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

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

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