网站大量收购独家精品文档,联系QQ:2885784924

用函数实现模块化程序设计.pptVIP

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

4. extern—声明外部变量的作用范围 (2)将外部变量的作用域扩展到其他文件 在任一个文件中定义外部变量,而在另一文件中用extern对该变量作外部变量声明 7.5.3 作用域和生存期的小结 对一个变量的属性可以从两个方面分析,一是变量的作用域,一是变量的生存期。 前者是从空间的角度,后者是从时间的角度。 二者有联系但不是同一回事 P195 调用函数的方式: 按函数在程序中出现的位置来分,可以有以下3种函数调用方式 1. 函数语句 调用没有返回值的函数,函数调用单独作为一个语句 如例7.1中的“print_star();” 调用函数的方式: 按函数在程序中出现的位置来分,可以有以下3种函数调用方式 2. 函数表达式 函数出现在一个表达式中,这种表达式称为函数表达式 如例7.2中的“c=max(a,b);” 调用函数的方式: 按函数在程序中出现的位置来分,可以有以下3种函数调用方式 3. 函数参数 函数调用作为一个函数的实参 如printf (″%d″, max (a,b)); 7.2.4 对被调用函数的声明和函数原型 P175 在一个函数中调用另一个函数需要具备如下条件: (1) 被调用函数必须是已经定义的函数(是库函数或用户自己定义的函数)。 (2) 如果使用库函数,应该在本文件开头加相应的#include指令。 (3) 如果使用自己定义的函数,而该函数的位置在调用它的函数后面,应该进行函数声明 7.2.4 对被调用函数的声明和函数原型 P175 函数原型的一般形式有两种: 如 int max(int x,int y); int max(int,int); 原型说明可以放在文件的开头,这时本文件中所有函数都可以使用此函数 7.3 函数的嵌套调用和递归调用 P177 7.3.1 函数的嵌套调用 7.3.2 函数的递归调用 7.3.1 函数的嵌套调用 调用一个函数的过程中,又可以调用另一个函数 P177 7.3.1 函数的嵌套调用 P177 main函数 ① 调用a函数 ⑨ 结束 a函数 ③ 调用b函数 ⑦ ② ⑧ b函数 ⑤ ④ ⑥ 7.4 数组作为函数参数 7.4.1 数组元素作函数实参 7.4.2 数组名作函数参数 P184 7.4.1 数组元素作函数实参 由于实参可以是表达式,而数组元素可以是表达式的组成部分,因此数组元素可以作为函数的实参。 P185 7.4.2 数组名作函数参数 P186 希望在函数中处理整个数组的元素时,可以用数组名作为函数实参 注意,此时只是将数组的首元素的地址传递给所对应的形参,因此对应的形参应当是指针变量(见第8章)。 例7.7 有10个学生成绩,用一个函数求全体学生的平均成绩。 解题思路: 在主函数中定义一个实型数组score,将输入的10个学生成绩存放在数组中 设计函数average,用来求学生平均成绩 需要把数组有关信息传递给average函数 采取用数组名作为实参,把数组地址传给average函数,在该函数中对数组进行处理 #include stdio.h void main() { float average(float array[10]); float score[10],aver; int i; printf(input 10 scores:\n); for(i=0;i10;i++) scanf(%f,score[i]); aver=average(score); printf(average score is %5.2f\n,aver); } 数组名作实参 float average(float array[10]) { int i; float aver,sum=array[0]; for(i=1;i10;i++) sum=sum+array[i]; aver=sum/10; return(aver); } 与score共占同一存储单元 实参、形参都是float型 相当于score[0] 相当于score[i] 7.5 变量的作用域和生存期 7.5.1 变量的作用域---局部变量和全局变量 7.5.2 变量的存储方式和生存期 7.5.3 作用域和生存期的小结 P192 7.5.1 变量的作用域 ——局部变量和全局变量 1 局部变量 在函数和复合语句内定义的变量,称为内部变量或局部变量 只在本函数或复合语句内范围内有效(从定义点开始到函数或复合语句结束) 在此函数或复合语句以外是不能使用这些变量的 P192 2 全局变量 一个程序可以包含一个或若干个源程序文件(即程序模块),而一个源文件可以包含一个或若干个函数

文档评论(0)

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

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

1亿VIP精品文档

相关文档