下载此文档

大学C语言实用教程(课件)-第7章-函数.ppt


文档分类:IT计算机 | 页数:约72页 举报非法文档有奖
1/72
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/72 下载此文档
文档列表 文档介绍
函数是C程序的基本组成结构,是模块化程序设计的基本模块。从用户的角度看,C函数可分为标准库函数和用户定义函数两类。标准库函数是编译系统定义的,分别存放在不同的标题文件中,用户只要用#include包含其所在的标题文件后即可直接调用它们;用户定义函数则是用户为解决自己的特定问题自行编制的。C语言程序的优劣集中体现在函数上。如果函数使用恰当,可以使程序更有条理。第7章函数模块化程序设计的思想是采用自顶向下(或自底向上)、逐步求精的方法,将一个复杂的问题分解成若干个相对独立的子问题,每个子问题对应一个功能独立的程序模块,将这些模块有机地连接在一起,构成一个完整的程序。①由于模块是相对独立的,并且其功能单一,因此每个模块,可以独立编写和调试。②采用模块化结构的大型软件,可以根据模块的划分,由更多的人员同时进行集体开发,从而大幅度地缩短开发周期,加快软件的开发速度。③软件的模块化,可以使开发人员如同搭积木一样,把每个功能模块进行相应的组合,实现一个完整的应用软件。这就避免了程序开发过程中的重复劳动,提高了软件开发的效率。④由于对模块化软件的测试、修正或更新,都是以模块为基本单位,因此,对一个模块进行修正或更新时,不会影响其他模块。【例】函数调用示例。#include<>intsum(intx,inty)//子函数{returnx+y;}voidmain()//主函数{inta,b,c;scanf("%d%d",&a,&b);c=sum(a,b);//表达式调用printf("%d\n",c);},一个程序模块可以通过一个或几个C函数来描述,因此,使用C函数可以实现模块化程序设计。①一个复杂的程序往往包含一个主模块和若干个子功能模块。在C语言中,通常用main()函数作为主模块,描述程序的总体框架,其他函数则作为子模块,完成特定的子功能。②C函数是一种独立性很强的程序模块,所有的函数都处于平等地位,不存在从属关系。③一个C程序的各个函数可以集中存放在一个程序文件中,也可以分散存放在几个程序文件中。④函数之间的逻辑联系是通过函数调用实现的。一个C程序执行时,总是起始于main()函数,由main()函数调用其他函数,而其他函数又可以相互调用,最后终止于main()函数。当一个函数调用另一个函数时,前者叫调用函数,后者叫被调用函数。(){..fun1();fun2();..}fun1(){..fun11();..}fun2(){..fun21();.fun22();.}fun11(){...}fun21(){...}fun22(){...}调用流程返回流程图例C语言用函数来支持模块化程序设计。若干个C函数组成C程序,各个函数都是独立的,但逻辑上是一个整体。(1)函数名函数名是编译系统识别函数的依据。在一个C程序中,除了主函数有固定名称main外,其他函数名由用户定义,取名规则与标识符相同。函数名与其后的圆括号之间不能留空格,C编译系统依据一个标识符后有没有圆括号来判定它是不是函数。[存储类型]数据类型函数名(形式参数表)//函数首部{函数体;}(2)函数的形式参数形式参数也称形参或虚参,用来建立函数之间的数据联系,它们被放在函数名后面的圆括号中。当一个函数被调用时,形参接收来自调用函数的实在参数(也称实参),实现函数与函数之间的数据通信,称为参数传递。形式参数可以是变量、数组、指针,也可以是函数、结构、联合等。也有的函数在被调用时不需要与调用函数传递数据,函数名后面的圆括号中可写入void或不写字符,但圆括号不能省略。这种函数称为无参函数。如floatsub(void)或floatsub()(3)函数的返回值和return语句有的函数在运行结束时,要将运算结果返回到调用函数,称为函数的返回值。函数的返回值是由return语句完成的,且return不能省略,作为返回值的变量或表达式可以用圆括号括住,也可以省略圆括号。有的函数不需要向调用函数返回值,称为无返回值函数,可以用不带表达式的return作为函数的逻辑结尾,也可以省略return。#include<>floatpower(floatx,intn) {inti; floats=;for(i=0;i<n;i++)s=s*x;returns;//返回值 }(4)函数的数据类型有返回值的函数都必须有数据类型,它是该函数返回值的类型,可以是char、int、float、double、指针等。如果return中的表达式类型与函数数据类型不一致,则编译系统自动将表达式的类型转换成函数的数据类型后返

大学C语言实用教程(课件)-第7章-函数 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数72
  • 收藏数0 收藏
  • 顶次数0
  • 上传人bai1968104
  • 文件大小270 KB
  • 时间2020-09-24