C语言程序设计__第4章.ppt

C语言程序设计__第4章.ppt

ID:49264096

大小:682.00 KB

页数:114页

时间:2020-02-02

C语言程序设计__第4章.ppt_第1页
C语言程序设计__第4章.ppt_第2页
C语言程序设计__第4章.ppt_第3页
C语言程序设计__第4章.ppt_第4页
C语言程序设计__第4章.ppt_第5页
资源描述:

《C语言程序设计__第4章.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第4章 函数返回总目录目 录4.1函数调用过程4.2函数的定义4.3递归函数4.6习题四4.4存储类型、生存期和作用域4.5编译预处理返回总目录●基本要求:1)熟悉函数的定义、声明与调用,并熟悉递归函数的定义与使用;2)熟悉存储类型、生存期和作用域;3)熟悉编译预处理。●学习重点:1)函数的定义与调用;2)生存期、作用域、编译预处理。4.1函数调用过程4.1.1函数调用的定义主函数main()只能被系统调用,不能被其它函数所调用;主函数main()可以调用库函数或其他函数;除主函数main()外,其他函数之间可以相互调用;在一个程

2、序中,通过调用关系将各函数联系在一起,程序总是从main()函数开始执行,调用所需要的函数,完成所调用函数的功能,返回到main()函数继续执行,最后在main()函数中结束。函数调用:在一个函数中引用另一个函数,称为~返回目录4.1函数调用过程4.1.2函数调用过程函数调用的图示设有main函数、fun函数,则它们的调用过程如图所示。4.1函数调用过程4.1.2函数调用过程函数调用的图示main(){inta,b,c;scanf("%d,%d",&a,&b);c=fun(a,b);printf("Maxis%d",c);}fun(

3、intx,inty){intz;z=x>y?x:y;return(z);}形参实参c=fun(a,b);(main函数)(fun函数)fun(intx,inty){intz;z=x>y?x:y;return(z);}4.1函数调用过程4.1.2函数调用过程首先为被调函数的所有形式参数分配内存,再计算实际参数的值,再一一对应地赋给相应的形式参数(对于无参函数,不做此工作);然后进入被调函数的函数体,为函数说明部分定义的变量分配存储空间,再依次执行函数体中的可执行语句;当执行到“return”语句时,计算返回值(如果是无返回值的函数,不

4、做这项工作);释放本函数中定义的变量所占用的存储空间(对于static类型变量,其空间不释放),返回主调函数继续执行。函数调用过程简述4.1函数调用过程4.1.2函数调用过程函数调用的规则说明被调用的函数必须是已经存在的函数(即是库函数或用户自己定义的函数);如果调用库函数,需要在程序的开头包含相应的头文件,如使用数学库中的函数,就用#include;函数的声明:详见4.2.3小节。4.1函数调用过程4.1.2函数调用过程#includeintmax(intx,inty){intz;if(x>y)z

5、=x;elsez=y;returnz;}main(){inta,b,c;scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“Max=%d”,c);}例4.1从键盘输入2个整数,求较大的整数。4.2函数的定义4.2.1函数定义的一般形式函数定义的一般形式为:函数类型说明函数名(形参说明表){说明部分;执行部分;}注:“函数类型说明”就是说明函数返回值的数据类型;“形参说明表”是对形参变量数据类型的说明;花括号括起来的语句序列是函数体,它包括函数内部定义的变量说明和函数执行部分。返回目录4.2函数的定义4

6、.2.2函数定义的要点函数类型说明函数类型就是函数返回值的数据类型。函数返回时可能得到0个数据、1个数据或多个数据。函数类型的定义要根据函数是否有无返回值来定义。4.2函数的定义4.2.2函数定义的要点函数类型说明(1)函数无返回值如果函数没有返回值,则一般在定义函数时把“函数类型说明符”说明为void。例如:voidPRINT(){printf("Test");}4.2函数的定义4.2.2函数定义的要点函数类型说明(2)函数有1个返回值这时在被调用函数的函数体中有return语句。此时函数类型的定义应根据return语句后的表

7、达式的数据类型来定义。例如:intmax(inta,intb){returna>b?a:b;}4.2函数的定义4.2.2函数定义的要点函数类型说明(2)函数有1个返回值当函数类型与return语句后的表达式的数据类型不一致时,函数类型决定return语句后的表达式的数据类型,系统自动将表达式的数据类型转换成函数定义的数据类型,在函数定义过程中,最好定义两者一致,以免结果出错;intmax(floata,floatb){returna>b?a:b;}main(){printf("%d",max(12.3,20.6));}输出结果:20

8、4.2函数的定义4.2.2函数定义的要点函数类型说明(2)函数有1个返回值当缺省函数类型定义时,系统默认函数类型为int或char,同时也说明当函数类型为int或char时,可缺省函数类型说明。max(inta,intb){retur

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

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

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