C语言第四版课件第8章函数.ppt

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

第8章 函数 数学中的函数 函数就是映射 Y=f(x) Y=x1+x2; 概述 模块化程序设计 基本思想:将一个大的程序按功能分割成一些小模块, 特点: 各模块相对独立、功能单一、结构清晰、接口简单 降低了程序设计的复杂性 提高程序的可靠性 缩短开发周期 避免程序开发的重复劳动 易于维护和功能扩充 开发方法: 自上向下,逐步分解,分而治之 从使用的角度 标准函数(库函数):由系统提供 用户自定义函数 从函数的形式 无参函数 有参函数 形参与实参 形式参数:定义函数时函数名后面括号中的变量名 实际参数:调用函数时函数名后面括号中的表达式 函数的返回值 返回的类型 返回语句 形式: return (表达式); 或 return 表达式; 或 return; 功能:使程序控制从被调用函数返回 到调用函数中,同时把返值带 给调用函数 说明: 函数中可有多个return语句 若无return语句,遇 } 时, 自动返回调用函数 若函数类型与return语句中表达 式值的类型不一致,按前者为准, 自动转换------函数调用转换 void型函数 函数的调用 调用形式 函数声明(declaration) 对被调用函数要求: 必须是已存在的函数 库函数: #include *.h 用户自定义函数: 一般要加上函数类型声明 (说明) 函数声明 (示例) 一般形式: 函数类型 函数名(形参类型 [形参名],….. ); 或 函数类型 函数名(); 函数定义与函数声明不同 作用:告诉编译系统函数类型、参数个数及类型,以便检验 函数声明位置:程序的数据声明部分(函数内或外) 下列情况下,可不作函数说明 若函数返值是int型,系统自动按int型处理(不推荐!) 被调用函数定义出现在主调函数之前 当被调函数的函数定义出现在主调函数之前时,在主调函数中也可以不对被调函数再作说明而直接调用。 函数的嵌套 嵌套调用 C规定:函数定义不可嵌套,但可以嵌套调用函数 数组元素作函数实参——值传递 概述 变量是对程序中数据的存储空间的抽象 局部变量---内部变量 定义:在函数内定义,只在本函数内有效 说明: main中定义的变量只在main中有效 不同函数中同名变量,占不同内存单元 形参属于局部变量 可定义在复合语句中有效的变量 局部变量可用存储类型:auto register static (默认为auto) 全局变量---外部变量 定义:在函数外定义,可为本文件所有函数共用 有效范围:从定义变量的位置开始到本源文件结束,可用extern声明对其进行扩展 存储方式 静态存储:程序运行期间分配固定存储空间 动态存储:程序运行期间根据需要动态分配存储空间 内存用户区 例 引用其它文件中的变量,输出a?b和a的m次方 int a; main() { int power(int n); int b=3,c,d,m; printf(Enter the number a and its power:\n); scanf(%d,%d,a,m); c=a*b; printf(%d*%d=%d\n,a,b,c); d=power(m); printf(%d**%d=%d,a,m,d); } extern int a; int power(int n) { int i,y=1; for(i=1;i=n;i++) y*=a; return(y); } 程序区 静态存储区 动态存储区 全局变量、局部静态变量 形参变量 局部动态变量(auto register) 函数调用现场保护和返回地址等 生存期 静态变量:从程序开始执行到程序结束 动态变量:从包含该变量定义的函数开始执行至函数执行结束 动态变量与静态变量 c程序设计 C程序结构 源程序文件1 预编译命令 说明部分 执行部分 函数1 函数n 源程序文件i 源程序文件n C程序 一个较大的程序一般应分为若干个程序模块(一段程序) 每一个模块用来实现一个特定的功能。 高级语言中都有子程序这个概念,用子程序实现模块的功能。 在C语言中,子程序的作用是由函数完成的。 一个C程序可由一个主函数和若干个函数构成。 由主函数调用其他函数,其他函数也可以互相调用。 同一个函数可以被一个或多个函数调用任意多次。 C是模块化程序设计语言 使用库函数应注意: 1、函数功能 2、函数参数的数目和顺序,及各参数意义和类型

文档评论(0)

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

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

1亿VIP精品文档

相关文档