- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程变量的作用域和生存周期、递归
函数的定义和函数的调用 函数定义格式: 返回值类型 函数名(类型 参数1,类型 参数2,…) { 函数体 return 表达式; } 函数调用格式: 函数名(参数1,参数2,…); 函数定义的语法远比函数调用的要严格很多 函数原型 函数和变量一样,要先定义后使用 如果函数调用出现在函数定义之前,必须使用函数原型说明该函数有几个参数,参数的类型,和返回值的类型,才能保证编译器正常完成工作 示例 double add(double,double); int main() { …… add(a,b); return 0; } double add(double x,double y) { …… } 对函数接口加以注释说明 /* 函数功能:实现××××功能 函数参数:参数1,表示××××× 参数2,表示××××× 函数返回值: ××××× */ 返回值类型 函数名(参数表) { 函数体 return 表达式; } 主要内容 变量的作用域和生存周期 函数的嵌套调用和模块化原则 函数的递归调用 重点 难点 变量的作用域和生存周期 重点、难点 模块化原则 重点、难点 需要实践和经验 函数的递归调用 难点 变量的作用域 #include stdio.h int main() { int a = 1; { int a = 2; printf(In the INNER block, a = %d\n, a); } printf(In the OUTER block, a = %d\n, a) return 0; } #include stdio.h int main() { int a; { int b; { int c; a = 0; b = 0; c = 0; d = 0; } a = 0; b = 0; c = 0; d = 0; } { int d; a = 0; b = 0; c = 0; d = 0; } a = 0; b = 0; c = 0; d = 0; return 0; } 比较两程序 #include stdio.h int main() { int a = 3, b = 5,temp; printf(before swap,a=%d,b=%d,a,b); temp = a; a = b; b = temp; printf(after swap,a=%d,b=%d,a,b); return 0; } #include stdio.h void swap(int a,int b) { int temp; temp = a; a = b; b = temp; } int main() { int a = 3, b = 5,temp; printf(before swap,a=%d,b=%d,a,b); swap(a,b); printf(after swap,a=%d,b=%d,a,b); return 0; } 说明 被大括号括起来的区域,叫做语句块(Block) 函数体、循环体、分支结构都可以看作语句块 变量的作用域规则是: 每个变量仅在定义它的语句块内(包含下级语句块)内有效,并拥有自己的内存空间 同一语句块内不可以定义同名变量,不同语句块内可以定义同名变量 变量的作用是表征变量的作用范围,属于空间概念 按照变量的作用域,变量可以分为全局变量和局部变量 #include stdio.h int a = 3, b = 5; //定义全局变量 void swap() { int temp; temp = a; a = b; b = temp; } int main() { printf(before swap,a=%d,b=%d,a,b); swap(a,b); printf(after swap,a=%d,b=%d,a,b); return 0; } #include stdio.h extern int a,b; void swap() { int temp; temp = a; a = b; b = temp; } int main() { printf(before swap,a=%d,b=%d,a,b); swap(a,b); printf(a
您可能关注的文档
- 复习题管理心理学.doc
- 2006年10月全国自考管理心理学试题.doc
- 《管理心理学》复习思考题.doc
- 2013-2014-02法学通论A卷.doc
- 湖北省第二师范学院业余教育期终考试.doc
- “资源与运营管理”课程基于网络考核改革试点方案.doc
- 心理学笔记13.doc
- 05.1(全).doc
- 2012-2013-02法学通论A.doc
- 2014-2015-01法学通论A卷.doc
- 2023版人教版初中数学同步讲义练习8年级下册第十八章 平行四边形 专题18.2 特殊的平行四边形 (教师版).pdf
- TCSHB 0023-2024 中型可编程控制柜设计规范.pdf
- TDGAS 043-2024 服装领域数字化众包平台通用要求.pdf
- TCSMT YB010-2024 液体流量标准装置测控系统.pdf
- TCSAA 26-2024 零件冲击试验方法液滴旋转装置试验.pdf
- 《GB+21454-2021多联式空调(热泵)机组能效限定值及能效等级》最新解读.pdf
- 2023版人教版初中数学同步讲义练习8年级下册第十九章 一次函数 专题19.1 函数(学生版).pdf
- 《GBT 20230-2022磷化铟单晶》最新解读.pdf
- 《GBT 23549-2021丙环唑乳油》最新解读.pdf
- 《GBT 41031-2021液化煤层气》最新解读.pdf
最近下载
- 工程结构健康监测技术规程.pdf VIP
- YST 509.1-2008锂辉石、锂云母精矿化学分析方法 氧化锂、氧化钠、氧化钾量的测定 火焰原子吸收光谱法.pdf
- 社区获得性肺炎诊断和治疗指南.pdf VIP
- 初中美术七年级下册(2024)湘美版(2024)合集.docx
- 解剖独立代理人制度.pptx
- 14日天津市直机关遴选面试真题及解析.docx VIP
- 中央银行学(第五版)全套PPT课件.pptx
- 天翼云解决方案架构师(高级)认证资格考试题(附答案).doc VIP
- 房地产-新发展模式展望系列二:新加坡凯德集团:开发投管有机联动,资产管理能力卓著.pdf VIP
- 新标准大学英语(第二版)综合教程2 课后练习答案.pdf
文档评论(0)