C语言程序设计(第4版)课件:利用函数实现模块化程序设计.pptx
C语言程序设计(第4版);C语言既是通用计算机软件设计的基础语言,也是当前嵌入式软件设计的主流语言。
通过对本书的学习,既能掌握C语言编程基础,也能掌握模块化程序设计方法及软件工程文件组织方法,可为后续的其他软件语言程序设计和嵌入式软件设计奠定良好的基础。
本书可作为高职本科和高职高专电子信息类、计算机类、自动化类、机电类专业的C语言教材,也可供从事嵌入式系统与物联网技术开发的工程技术人员参考。;利用函数实现模块化程序设计;一个复杂的C程序由若干个程序模块组成,每个程序模块作为一个源程序文件(.c文件、.h文件等),而每个源程序文件由预处理命令、数据声明以及若干函数组成。;从不同的角度对函数进行分类。;4.2.1定义无参函数;任务4.2熟悉定义函数的方法;4.3.1函数的一般调用;【例4.1】有参函数的一般调用:求两个数的最大值。;2、关于函数调用时“参数传递”的几点说明;3、函数的值;4、对被调函数的声明;说明:调用库函数时,无需对其进行声明,但要把该函数对应的头文件用#include命令包含在源文件中。;4.3.2函数的嵌套调用;4.3.3函数的递归调用;【例4.4】有5个人坐在一起,问第5个人多少岁,他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第3个人,又说比第2个人大2岁。问第2个人,说比第1个人大2岁。最后问第1个人,他说他10岁。请问第5个人多大?;【例4.5】用递归方法计算n的阶乘n!;4.4.1数组元素作为函数实参;4.4.2数组名作为函数参数;4.4.2数组名作为函数参数;4.4.2数组名作为函数参数;4.5.1局部变量和全局变量;2、全局变量;【例4.10】输入正方体的棱长,输出其表面积和体积的大小。;(2)在同一个源文件中,若全局变量与局部变量同名,则在局部变量的作用范围内,全局变量被“屏蔽”失效。;【例4.12】考察全局变量和局部变量的系统默认初值。;4.5.2变量的存储方式;1、局部变量的存储类别声明;有时希望函数中的局部变量在函数调用结束后,其占用的存储单元不被释放,其值不消失而继续被保留。需要用static将该局部变量声明为静态存储类型。;4.5.2变量的存储方式;静态局部变量的常用场合:需要保留上次函数调用结束时的值。;(3)用register声明寄存器变量;【例4.18】用extern将全局变量的作用域扩展到其他文件。;(2)用static声明静态全局变量(缩小全局变量的作用域);函数一般都是全局的,即外部函数,能被其他的源文件调用。但也可以利用static将函数声明为内部函数,仅限于本文件中调用,而防止被其他文件调用。;第4单元利用函数实现模块化程序设计