chapter07_1010

chapter07_1010

ID:40226220

大小:1.61 MB

页数:51页

时间:2019-07-27

chapter07_1010_第1页
chapter07_1010_第2页
chapter07_1010_第3页
chapter07_1010_第4页
chapter07_1010_第5页
资源描述:

《chapter07_1010》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第七章函数概述函数定义的一般形式函数参数和函数值函数的调用函数的嵌套调用函数的递归调用数组作为函数参数局部变量和全局变量内部函数和外部函数第七章函数学习要点:掌握函数的定义方法掌握函数的类型和返回值掌握形式参数与实际参数、参数传递掌握函数的正确调用,了解函数的递归调用掌握局部变量和全局变量变量的存储类型,作用域和生存期第七章函数7.1概述一个C程序由一个主函数和若干个其它函数构成。程序执行总是从主函数开始,由主函数调用其它函数,其它函数也可以互相调用。main(){……fa();……fb();……}fa(){……f1();……}f

2、1(){……}f3(){……}fb(){f2();……f3();……}f2(){……}执行过程结构框图结构框图框图main()fa()fb()f1()f2()f3()例7.1main(){printstar();print_message();printstar();}printstar(){printf(“*****************”);}print_message(){printf(“Howdoyoudo!”);}运行过程示意main(){……调用函数1;……调用函数2;……调用其它函数;}函数1{……}函数2

3、{……}C程序的一般通用结构。……其它函数说明:1.一个C源程序文件由一个或多个函数组成。以源程序文件为编译单位。2.main()函数由系统定义。3.函数定义,可以互相调用。在其它函数中不能调用main()函数。4.函数的种类从用户来看:标准函数(库函数)用户自定义函数。从形式来看:无参函数,有参函数。不能嵌套函数定义严禁嵌套main(){printstar();printstar(){printf(“******”);}}因大括号位置不当引起函数定义上的嵌套.XX重点§7.2函数定义的一般形式一般格式:存储类型数据类型函数名

4、(形式参数表列){声明部分执行语句}现代定义形式传统定义形式说明:1.数据类型指的是函数的返回值类型。2.可以定义和使用空函数空函数定义和使用intmax(intx,inty){intz;z=x>y?x:y;return(z);}说明intmax(x,y)intx,y;{intz;z=x>y?x:y;return(z);}说明空函数的应用应用:模块设计过程中.intdummy(){}说明§7.3函数参数和函数值一、形式参数和实际参数例7.2main(){inta,b,s;scanf(“%d,%d”,&a,&b);s=sum(a,b

5、);printf(“sum=%d”,s);}intsum(intx,inty){intz;z=x+y;return(z);}程序中a,b为实参;x,y为形参函数参数传递演示main(){inta,b,s;a=2,b=3;s=sum(a,b);/*其它处理*/printf(“s=%d”,s);}intsum(x,y)intx,y;{ints;/*其它处理*/s=x+y;return(s);}a=2b=3s=5关于形参与实参的说明:1.形参变量在未出现函数调用时,并不占用内存单元。调用时才为其分配内存单元,且调用结束后所占用内存单元立

6、即释放。2.实参可以是常量,变量(包括指针变量),数组名(包括数组元素)或表达式等,但应有确定的值。如:max(3,a+b);3.实参和形参在数据类型和个数上应匹配。4.实参对形参的数据传递是“值传递”,即单向传递。二者在内存中占据不同的内存单元。在调用函数时,形参的值即使发生变化,也不会改变主调函数的实参值。实例形参的值改变不会改变实参的值main(){inta=3,b=4;add(a,b);printf(“%d,%d”,a,b);}add(intx,inty){x=x+3;y=y+4;}结果为:3,4重点5.形参变量和实参

7、变量可以同名。main(){inta=3,b=4;add(a,b);printf(“%d,%d”,a,b);}add(inta,intb){a=a+3;b=b+4;}343468ababab输出:3,4变量或表达式4.若确定不需要带回返回值,则可以将函数定义为:void型。系统保证不使用函数的返回值。二、函数的返回值格式:return();说明:1.一个函数中允许有多个return语句。2.函数值的类型应和return语句中变量(或表达式)的类型一致。如不匹配,则以函数类型为准。对于数值型数据可以自动进行类型转换。3.若被调函

8、数中无return语句,则返回一个不确定值。一个函数中允许有多个return语句intmax(intx,inty){if(x>y)return(x);elsereturn(y);}多个return示例函数返回值隐含的自动类型转换main(){flo

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

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

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