1 / 38
文档名称:

《C语言程序设计与数据结构》第6章 函数.ppt

格式:ppt   页数:38
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《C语言程序设计与数据结构》第6章 函数.ppt

上传人:rjmy2261 2013/1/2 文件大小:0 KB

下载得到文件列表

《C语言程序设计与数据结构》第6章 函数.ppt

文档介绍

文档介绍:第六章
函数
C语言程序设计与数据结构
总体要求:
掌握自定义函数的一般结构及定义函数的方法;
掌握形参、实参、函数原型等重要概念;
掌握函数声明、函数调用的一般方法;
了解局部变量、全局变量的概念;
掌握auto型和static型局部变量的特点和用法。
C语言程序设计与数据结构
学习重点:
区分函数定义、函数说明的区别;
理解参数传递的意义。
C语言程序设计与数据结构
在高级语言程序设计中往往将一个较大的程序分解成若干较小的、功能单一的程序模块来完成特定的功能,称其为子程序。通过对这些子功能的组织和调用,来实现整个程序的功能要求。C语言中,这些功能比较独立的子程序成为函数。函数是C语言程序的一种基本组成部分,C语言程序的功能是通过函数之间的调用来实现的,一个完整的C语言程序可由一个或多个函数组成,每个函数都有一个函数名。
C语言程序设计与数据结构
为什么使用函数?
第一,使用函数可以省去写重复代码。如果程序中要多次使用某种特定的功能,那么只需编写一个合适的函数即可。程序可以在任何需要的位置调用该函数,并且同一个函数可以在不同的程序中调用,就像在很多程序中使用printf()函数一样。
第二,即使某种功能在程序中只使用一次,将其以函数的形式来实现也是必要的,因为函数使得程序更加模块化,从而有利于程序的阅读、修改和完善。
C语言程序设计与数据结构
C语言函数设计的一般原则为:
(1)界面清晰。函数的处理任务明确,函数之间数据传递越少越好。
(2)大小适中。函数太大,处理任务复杂,导致结构复杂,程序可读性差;反之,若函数太小,则程序调用关系复杂,这样会降低程序的效率。
C语言程序设计与数据结构

在C语言中,从用户使用的角度看,函数可分为库函数和用户自定义函数两种。
C语言提供了极为丰富的库函数,如前几章例题中反复用到的scanf()、printf()、getchar()等函数均属于库函数。这类函数是由系统提供并定义好的,不必用户再去定义,用户只需掌握函数的功能,并学会正确调用这些函数即可,至于函数内部是如何实现这些功能的,用户不必知道。但是,仅有C语言的库函数在实际编程中往往是不够用的,这就需要用户按需要定义和编写自己的函数来解决某些问题。
C语言程序设计与数据结构
事实上,一个具备一定规模C程序往往由多个函数组成。其中必有一个名为main的主函数,由main来调用其他函数。必要的话,其他函数还可以调用另外的函数。同一个函数可以被多个函数调用一次或者多次。
从总的框架来看,是将一个大的计算任务划分为一个一个小的任务,这些小的任务均由函数来完成。而函数既可以是C的标准库函数,也可以是用户自定义函数。
注意:函数必须先定义,后调用。
C语言程序设计与数据结构

从函数定义的角度看,函数可分为库函数和用户定义函数两种
C语言的函数兼有其它语言中的函数和过程两种功能,从这个角度看,又可把函数分为有返回值函数和无返回值函数两种。
从主调函数和被调函数之间数据传送的角度看又可分为无参函数和有参函数两种。
C语言提供了极为丰富的库函数
C语言程序设计与数据结构
还应该指出的是,在C语言中,所有的函数定义,包括主函数main在内,都是平行的。
也就是说,在一个函数的函数体内,不能再定义另一个函数,即不能嵌套定义。但是函数之间允许相互调用,也允许嵌套调用。习惯上把调用者称为主调函数。函数还可以自己调用自己,称为递归调用。main 函数是主函数,它可以调用其它函数,而不允许被其它函数调用。
因此,C程序的执行总是从main函数开始,完成对其它函数的调用后再返回到main函数,最后由main函数结束整个程序。一个C源程序必须有,也只能有一个主函数main。
C语言程序设计与数据结构

最近更新

急救护理中的急救转运 38页

2024年清水河县幼儿园教师招教考试备考题库及.. 30页

2024年湖北省直属机关业余大学马克思主义基本.. 13页

2024年湖南省(147所)马克思主义基本原理概论.. 13页

2024年潇湘职业学院马克思主义基本原理概论期.. 13页

2024年石家庄工程职业学院马克思主义基本原理.. 12页

2024年福建商学院马克思主义基本原理概论期末.. 12页

2024年绍兴理工学院马克思主义基本原理概论期.. 13页

2024年芜湖学院马克思主义基本原理概论期末考.. 12页

2024年菏泽职业学院马克思主义基本原理概论期.. 12页

2024年西交利物浦大学马克思主义基本原理概论.. 12页

2024年贵阳职业技术学院马克思主义基本原理概.. 12页

2024年辽宁科技大学马克思主义基本原理概论期.. 12页

2024年遵义县幼儿园教师招教考试备考题库带答.. 30页

2024年郸城县招教考试备考题库附答案解析 30页

2024年重庆青年职业技术学院马克思主义基本原.. 12页

2024年长城铝业公司职工工学院马克思主义基本.. 13页

2024年陕西学前师范学院马克思主义基本原理概.. 13页

2024年青岛航空科技职业学院马克思主义基本原.. 12页

2024年黑河学院马克思主义基本原理概论期末考.. 12页

2024年龙陵县招教考试备考题库及答案解析(必.. 30页

高效渲染技术 38页

高速精密加工技术-第2篇 36页

2025年中原科技学院马克思主义基本原理概论期.. 13页

2025年临桂县幼儿园教师招教考试备考题库及答.. 31页

2025年乌鲁木齐职业技术学院马克思主义基本原.. 13页

2025年云南水利水电职业学院单招职业适应性测.. 47页

2025年六安职业技术学院单招职业技能测试题库.. 43页

2025年内蒙古体育职业学院马克思主义基本原理.. 12页

绿色建材政策影响分析 35页