- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
函 数 ●函数的特点 ●函数定义的一般形式 ●函数的作用域 ●函数的调用 ●形参和实参 ●局部变量和全局变量 ●动态存储变量与静态存储变量 int i=0; main() {int i=5; reset(i/2); printf(i=%d\n,i); reset(i=i/2); printf(i=%d\n,i); reset(i/2); printf(i=%d\n,i); work(i); printf(i=%d\n,i);}? work(int i) {i=(i%i)*((i*i)/(2*i)+4); printf(i=%d\n,i); return(i);}? reset(int i) {i=i=2?5:0; return(i);} 第 五 讲 ●函数的用法及其执行过程。 ●递归调用。 教学难点重点: 内容提要: 一个应用程序可根据其功能划分为若干个小模块来处理,每个小模块可编制成一个函数。 (1)C程序是由一个主函数main()和若干个库函数、自定义函数组成。 (2)程序总是从main函数开始执行,其它函数则是通过main函数中的语句直接或间接地调用来执行。 (3) C程序中有且仅有一个主函数,自定义函数可有可无。 知识回顾 结构化程序设计思想: ● 编译单位是源程序文件,不是函数。 ● 一个函数的代码是属该函数专有的,对程序的其它部分是隐藏的。 ● 函数平行,不能嵌套定义。 ● 函数可相互调用,主函数不能被调用。 ● 函数可以有/无参数。 C函数的特点及分类 C函数的分类 按使用 分类 标准函数:库函数; 自定义函数:用户自己定义说明,专门的、特殊的; 按形式 分类 无参函数:如 main( )-由系统调用! 有参函数:有形参表及说明; 返回语句 return 函数名是 一个标识符, 后必须跟一 对圆括号 返回语句 return 函数名是 一个标识符, 后必须跟一 对圆括号 函数体必 须用一对花 括号括起 来。 函数名是 一个标识符, 后必须跟一 对圆括号 函数定义的一般形式: 无参函数: 类型标识符 函数名( ) {说明部分 语句 返回语句 } 空函数: 类型标识符 函数名( ) { } 从粗到细逐步求精的程序设计,用于预留空档便于程序扩展。 形参之间用逗号分隔 函数体必 须用一对大 括号括起 来 函数体 函数体 有参函数: 类型标识符 函数名( 形式参数表列) 形式参数说明 {说明部分 语句 返回语句} 函数体必 须用一对花 括号括起 来。 例:求二个数最大者 main ( ) { int a,b,c; scanf ( %d,%d , a, b ); c = max ( a, b ); printf ( Max is %d \n,c ); }max ( x, y )/ * 定义有参函数max * / int x, y ; { int z ; z = x y ? x : y ; return ( z ) ; } 运行情况如下: 输入: 7 ,8 输出:Max is 8 执行过程如下: 执行max函数体 求出b, 赋给 y 求出a, 赋给x 求出z值赋给c main ( ) 结束 调用max(a,b) 打印Max is, c 读入a, b 函数参数:形参与实参 a b y 实参 x 形参 函数的返回值 返回语句: return (1)return; 无返回值 (2)return(表达式); 返回表达式值 圆括号可省略 ( ) 说明: 一个函数体中允许有多个return语句 若明确不返回值,可用void类型(无类型)定义函数 return语句中的表达式的类型与函数类型不同时,以函数类型为准; 说明: 实参就是函数调用语句中的实际数据。它可以是变量、常量及运算表达式。 实参和形参类型要一致,一一对应。 只能实参值传给形参,形参值不能传给实参(值传递) 不说明的函数类型视为整型。 说明: 实参求值一般自右至左 调用形式:作为语句或表达式 在主调函数中一般要对被调函数予以声明。 函数的调用 函数调用的一般形式: 被调函数名 (实参表列); main ( ) /*被调函数是整型,在此前定义可不加如下说明*/ { float add( ), a,b,c; scanf(“%f,%f”,a,b); c=add(a,b); printf(“sum=%f”,c); } float add(x,y) float x,y; { float z; z=x+y; return(
文档评论(0)