- 1、本文档共71页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计课程课件之第三章模块化程序设计
第 三 章 引出 [教学要求] 3.2 函数的定义 函数定义的高级知识 函数的形式分类1 有参函数 无参函数 无参函数定义 通常也无返回值,仅需书写: void 函数名(); 例如: void clrscr(); void draw() { …… } main() { draw(); draw(); } 如果有返回值,则写明返回值类型, 例如 char getchar(); ch=getchar(); 有参函数定义 需写明参数的个数和类型: 类型 函数名(类型 参数1,类型 参数2,…) 如: int sushu(int n); float fun(int m, int n); 【强调】:形参定义时需分别写明它们的类型,类型相同不能只写一个,例如下错误: float fun(int m, n); 函数定义分析练习 分析设计函数首部信息: 实验4-1-4: float fun(int n) 实验4-1-5: float fun(int m,int n) 实验4-1-7: void fun() 有返回值函数定义 有返回值函数,在函数体内用return语句返回处理的结果值。 如:int sushu(int x) { int i; for(i=2;i=x/2;i++) if(x%i==0) return 0; return 1; } return语句的两个功能:返回值、结束函数调用。 如果函数不返回值,则名称前写void,如: void draw(int x,int y) 如果定义函数时名称前没写明类型,默认为int类型,如: draw(int x,int y) 函数定义练习 例:编写一个函数,其功能是求m的n次方,即mn。 函数调用 形参和实参 有返回值函数调用 有返回值函数调用 有返回值函数调用 有返回值函数调用 无返回值函数调用 本次课内容小节 编程练习 函数编程练习 编写函数,求三角形面积。 函数参数:三角形的三条边 函数返回值:三角形面积。 编程练习(实验题目) 编写函数判断一个数是否是完数。 完数:一个数如果恰好等于它的因子之和,这个数就是完数,例如6的因子为1、2、3,而6=1+2+3,因此6是完数。 要求函数返回整型值。 局部变量---内部变量 在函数内定义的变量是局部变量, 其作用域:只在本函数内有效 声明: 不同函数中可定义的局部变量可同名,占不同内存单元 形参属于局部变量 在复合语句中也可以定义它的局部变量,其作用域是只在此复合语句中有效。 全局变量---外部变量 函数外部定义的变量称为全局变量 其作用域为定义位置后的任何函数 动态存储变量和静态存储变量 局部变量的存储类别:动态存储变量和静态存储变量。 auto动态存储变量是在程序运行时根据需要动态分配存储空间。函数被调用时,分配给内存单元,调用结束后就释放内存单元。 static静态存储变量局是指程序运行期间分配固定的存储空间。每次函数调用结束后不释放空间,只有在主程序运行结束才释放内存单元。 static静态变量在函数多次调用时,只赋一次初值,每次调用后保留当时的结果值。 变量的声明类型 局部变量的定义类型 auto自动类型 如:atuo int i,a,b; static静态类型 如:static int x,y; register 寄存器类型 如:register int i; 补充:如无特殊声明,默认为auto类型 3-4 3.7 库函数的使用 参考书后附录,P303 注意包含相应的头文件。 注意理解参数的类型和含义。 3.8 局部变量与全局变量 float f1(int a) { int b,c; ……. } char f2(int x,int y) { int i,j; …… } main() { int m,n; ……. {int i;…… } } a,b,c有效 x,y,i,j有效 m,n有效 i有效 例 不同函数中同名变量 main() { int a,b; a=3; b=4; printf(main:a=%d,b=%d\n,a,b); sub(); printf(main:a=%d,b=%d\n,a,b); } sub() { int a,b; a=6;
您可能关注的文档
- ---北师大版小学六年级上册语文《狼牙山五壮士》公开课课件.ppt
- ---课件---人体解剖绪论.ppt
- (青岛版)一年级数学上册期中测试题hao.doc
- ---XX年度重点税源企业汇算清缴工作培训会.ppt
- ---腹外疝讲稿.ppt
- -地中海贫血基因诊断项目开展指南.doc
- ---高等工程热力学之绪论、第一章.ppt
- 001-牛顿第必定律.ppt
- 007罗兰贝格《企业团体组织结构和治理系统设计》93页.ppt
- 01083 薪资结构调整方案.ppt
- 在线教育平台用户增长与在线教育平台技术架构优化报告.docx
- 传统媒体如何应对新媒体的冲击-传统媒体应对新媒体挑战.pptx
- 2025年语言学习新纪元:互动平台搭建与运营策略探究.docx
- 2025年语言教育新趋势,多语种在线翻译平台盈利模式研究.docx
- 传统食品工业化生产转型:2025年技术改造与市场拓展策略报告.docx
- 2025年语言教育市场,多语种在线翻译平台的竞争策略与市场潜力.docx
- 2025年箱包服饰电商品牌推广海外市场品牌推广策略创新研究.docx
- 数字孪生技术赋能2025年智能医疗设备研发与生产报告.docx
- 智能健身工作室连锁行业市场细分与品牌差异化策略研究报告.docx
- 快消品企业促销活动效果评估与渠道优化策略研究.docx
文档评论(0)