C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt

C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt

ID:50352366

大小:506.50 KB

页数:157页

时间:2020-03-08

C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt_第1页
C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt_第2页
C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt_第3页
C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt_第4页
C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt_第5页
资源描述:

《C语言程序设计实例教程(第2版)丁爱萍第7章 函数.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章函数7.1模块化程序设计和C语言程序组成7.2库函数7.3函数的定义和调用7.4函数的返回值及其类型7.5函数调用时参数间的传递7.6函数的嵌套调用7.7函数的递归调用7.8作用域和存储类型7.9内部函数和外部函数7.10程序举例习题77.1模块化程序设计和C语言程序组成1.模块化程序设计在编制程序时,经常遇到这样的情况,有些运算经常重复进行,或者许多人的程序中都可能要进行同类的运算操作。这些重复运算的程序是相同的,只不过每次都以不同的参数进行重复罢了。如果多次重复书写执行这一功能的程序段,

2、将使程序变得很长,多占存储空间,繁琐而又容易出错,并且调试起来也较困难。解决这类问题的有效办法,是将上述重复使用的程序,设计成能够完成一定功能的可供其他程序使用(调用)的相对独立的功能模块。它独立存在,但可以被多次调用,调用的程序称为主程序。不但重复执行的程序段可以作为独立模块独立出去,即使是只执行一次的程序段也可以把它写成独立模块,并把程序应该完成的主要功能都分配给各模块去完成,用主程序把各独立模块联系在一起。这种设计方法是各种高级语言程序设计中的基本方法,即自顶向下、逐步细化和模块化。其中模块

3、化的具体做法是:将一个大型程序按照其功能分解成若干个相对独立的功能模块,然后再分别进行设计,最后把这些功能模块按照层次关系进行组装。使用独立模块的优点有:(1)消除重复的程序行。可以一次性定义一个独立模块并可由其他程序任意次调用。(2)使程序容易阅读。分解为一组较小的程序容易阅读和理解。(3)使程序开发过程简化。独立模块容易设计、编写和调试。(4)可以在其他程序中重用。可以把具有通用性的独立模块用在其他程序设计项目中。(5)使C语言得到扩充。独立模块可以完成内部语句和函数不能直接完成的任务。独立模

4、块由顺序、选择、循环这3种基本结构所组成,但它却有自己的特点,主要体现在主程序与独立模块之间的数据输入、输出,即主程序与各模块之间的数据传递。由于模块是通过执行一组语句来完成一个特定的操作过程,因此模块又称为“过程”,执行一个过程就是调用一个子程序或函数模块。结构化程序设计的基本思想是“自顶向下、逐步求精”,即将一个较大的程序按其功能分成若干个模块,每个模块具有单一的功能。2.C语言程序的组成在第1章中已经介绍过,C语言源程序是由函数组成的。C语言中的函数相当于其他高级语言的子程序。函数是C语言源

5、程序的基本模块,通过对函数模块的调用可以实现相应的功能。在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共使用。要善于利用函数,以减少重复编写程序段的工作量。在前面各章的程序示例中都只有一个主函数main,事实上一个实用程序往往由多个函数组成。一个简单的C程序的组成如图7.1所示。图7.1简单C程序的组成说明:(1)一个C程序有且只有一个主函数main。(2)C程序的执行总是从main函数开始,调用其他函数后总是回到main函数,最后在main函数中结束整个程序的运行。(3)一个C

6、程序由一个或多个源(程序)文件组成——可分别进行编写、编译和调试。(4)C语言是以源文件为单位而不以函数为单位进行编译的。(5)所有函数都是平行的、互相独立的,即在一个函数内只能调用其他函数,不能再定义一个函数(嵌套定义)。(6)一个函数可以调用其他函数或其本身,但任何函数均不可调用main函数。3.函数分类在C语言中可从不同的角度对函数进行分类。1)库函数和用户定义函数从函数定义的角度看,函数可分为库函数和用户定义函数两种。(1)库函数。库函数由C系统提供,用户无须定义,可以在程序中直接调用。在

7、前面各章的例题中反复用到的printf、scanf、getchar、putchar、gets、puts和strcat等函数均属此类函数。(2)用户定义函数。用户定义函数是由用户按需要编写的函数。对于用户定义函数,不仅要在程序中定义函数本身,而且在主调函数模块中还必须对被调函数进行类型说明,然后才能使用。2)有返回值函数和无返回值函数C语言的函数兼有其他语言中的函数和过程两种功能,从这个角度看,又可把函数分为有返回值函数和无返回值函数两种。(1)有返回值函数。有返回值函数被调用执行完后将向调用者返回

8、一个执行结果,这一结果称为函数返回值。如数学函数即属于此类函数。由用户定义的这种要返回函数值的函数,必须在函数定义和函数说明中明确返回值的类型。(2)无返回值函数。无返回值函数用于完成某项特定的处理任务,执行完成后不向调用者返回函数值。这类函数类似于其他语言的执行过程。由于函数无须返回值,用户在定义此类函数时可指定它的返回为“空类型”,空类型的说明符为“void”。3)无参函数和有参函数从主调函数和被调函数之间数据传送的角度看,又可把函数分为无参函数和有参函数两种。(1)无参函数。

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

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

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