西安电子科技大学C语言程序设计章第7章.ppt

西安电子科技大学C语言程序设计章第7章.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
西安电子科技大学C语言程序设计章第7章

2005年3月 第7章 函数及变量存储类型 第7章 函数及变量存储类型 7.1 概述 7.1 概述 7.2 函数的定义和声明 7.2.1 函数的定义 函数定义的一般形式 7.2.1 函数的定义 7.2.2 函数的声明 ※C语言允许函数先调用后定义或被调用函数在其它文件 中定义。但是此时必须在调用函数之前作函数声明。 函数声明的一般形式 7.3.1 函数调用的方式和条件 7.3.2 形参与实参的数值传递 7.3.2 形参与实参的数值传递 7.4 函数的嵌套与递归 7.4 函数的嵌套与递归 7.4 函数的嵌套与递归 7.4 函数的嵌套与递归 7-4 编一递归函数求n!。 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 7.5 变量的作用域与生存期 程序举例 程序举例 上机作业 * 西安电子科技大学 C 语言程序设计 内容提要: 7.1 概述 7.2 函数的定义与声明 7.3 函数的调用 7.4 函数的嵌套与递归 7.5 变量的作用域与生存期 7.6 编译预处理 C程序的结构如图所示: 1.一个C源程序由一个或多个 文件构成,一个源程序文件是 一个编译单位。 2.一个C程序可以分为若干个 函数,所有函数都是独立的。 3.每个程序有且只能有一个主 函数(main),其它函数 都是“子函数”。 4. 子函数之间可以相互调用, 但主函数不能被调用。 … … C程序 源程序文件n 函数1 函数m … 源程序文件1 函数1 函数n C程序结构示意图 说明: 1.C程序的执行总是从main函数开始,调用其它函数后最终回到main函数,在main函数中结束整个程序的运行。 2.所有子函数都是平行的,任何子函数都不属于其他函数。 3.从用户的角度看,函数可分为: 标准库函数(由系统提供) 用户定义函数 4.从函数形式看,可分为: 有参函数:在主调函数和被调用函数之间通过参数进行数 据传递。 无参函数:在调用无参函数时,主调函数不需要将数据传 递给无参函数。如:getchar( )。 存储类型标识符 函数类型 函数名(形式参数说明 ) { 说明语句 执行语句 } 函数返回值类型 缺省int型 无返回值void 合法标识符 函数体 函数首部 规定了函数可被调用的范围 存储类型标识符有static和extern,指定为static的函数为静态函数,只能由和它在同一文件中定义的函数调用。而缺省时为extern,是外部函数。 形式参数说明方法 类型说明 形参名1[,类型说明 形参名2…] 如果函数没有参数,可只写一对括号(不能省),最好将参数表指定为void。(无参函数) 函数体由局部变量说明部分和执行部分组成。局部变量和形参一样,其有效范围仅限于所在的函数内部,不能由其它任何函数调用。 函数体可以为空,称为空函数。 函数的返回值也就是函数值,如果一 个函数有返回值,就必须使用return语句。 无返回值的函数,类型标识符为void, 称为“空类型函数”,函数体中一定不要使用return语句。 return语句中表达式的类型一般应与函数类型一致。如果不一致,则需要进行类型转换,以函数类型为准。 7-1函数的定义 存储类型标识符 函数类型 函数名(形参表); 参数表可以只列出参数的类型名而不给出参数名。 对于无参数表的函数,声明时参数表应指定为void。 带参数表的函数声明称为函数原型。 函数的声明可位于调用函数体内或函数体外(一般位于程序开头部分)。 7-1函数的定义 #includestdio.h int max( int, int ); void main( ) { int a,b,c; scanf(“%d%d”,a,b); c = max(a,b); printf(“Max is %d\n”,c); } int max( int x,int y ) { int z; z=( xy )?x:y; return( z ); } 7.3 函数的调用 7.3.1函数调用的方式和条件 一、函数调用的一般形式: 函数名(实参表列) ①如果调用无参函数,实参表列可以忽略,但括号不能省。 ②实参和形参在个数、次序和类型上要一致。 ③实参表求值顺序,因系统而定(Turbo C 自右向左) 二、函数调用方式 1.函数语句 形式为:函数名(实参表列); 如:printf(“%d

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档