《许创制作》PPT课件.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《许创制作》PPT课件

许创制作 第6章 函数 引言 函数是C程序的基本单位 函数是模块化程序设计的基础 C程序函数调用的逻辑关系如下图所示: main( ) f1( ) f2( ) f11( ) f21( ) f22( ) 说明: 一个源程序文件由一个或多个函数构成 一个C程序由一个或多个源程序文件构成 程序总是从main主函数开始执行 所有函数都是平行定义的,没有包含关系 函数从使用角度分为以下两种: ① 标准库函数 ② 用户自定义函数 函数从形式分为以下两种: ① 无参函数 ② 有参函数 函数的构成 格式: 类型标识符 函数名(形参表) {声明部分 执行部分 } 【例6-1】无返回值的无参函数 void show( ) /* 空类型,无参数 */ { printf(How are you!\n); } /* 要结合main使用 */ 形参和实参的特点: 定义函数时,写在函数头圆括号中的变量名是形式参数 写在调用函数圆括号中的表达式是实在参数 调用时,实在参数按顺序传递给对应的形式参数 形参是变量,实参是表达式 形参与对应实参不必类型完全一致,但形参必须能赋值兼容于实参 函数的调用 函数调用形式: 函数名(实参表) 调用方式: 函数语句: scanf(%d, x); printf(a=%d\n, x); printstar(); 函数表达式: c=max(a, b); 函数参数: x=sin(atan(1.23)); printf(%d\n, max(a, b)); C语言规定:不能嵌套定义函数,但可以嵌套调用函数 嵌套调用的执行过程如下: ① 从main函数开始执行 ② 遇调用函数f1的语句,转去执行函数f1 ③ 在函数f1中,在f1中若遇调用函数f2的语句,就转去执行函数f2 ④ 完成函数f2的执行后,返回函数f1继续 ⑤ 完成函数f1的执行后,返回主函数继续 ⑥ 执行main调用函数f1的语句后面的部分 谭浩强先生语录 应该把复杂问题简单化,而不应该把简单问题复杂化。 变量的作用域 局部变量 在一个复合语句或函数内部定义的变量是局部变量,局部变量只能在本复合语句或本函数内部使用,一旦离开,再使用这种变量就是非法的 局部变量的生存期随着函数调用的结束而结束 形式参数也是局部变量 不同函数可以使用同名变量,但各有其作用域 可以在同一函数内部的复合语句中定义同名变量,使用时以小范围为准 【例 6-7】 复合语句中定义的变量的作用域 #includestdio.h void main() { int s, a; …… { int b; s=a+b; …… /* b作用域 */ } …… /* a作用域 */ } 全局变量 在函数之外定义的变量叫全局变量,全局变量可以被程序文件中各函数所共用 其有效范围(作用域)是从定义变量的位置开始到文件结束处 全局变量生存期覆盖整个程序运行期间 使用全局变量可增加函数间数据的联系,但因而增加模块间的耦合度而降低模块内的内聚度 滥用全局变量会降低函数的通用性、程序的清晰度和运行的安全性 【例 6-9】 全局变量的作用域 #includestdio.h int a, b; /* 全局变量a, b */ void f1( ) /* 函数f1 */ { …… } float x, y; /* 全局变量x, y */ void f2( ) /* 函数f2 */ { …… } void main( ) /* 主函数 */ { …… } 【例 6-11】全局变量与局部变量同名

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档