- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 函数 7.1 函数概述 7.2 函数的定义和调用 7.3 函数的嵌套调用 7.4 函数的递归调用 7.5 局部变量和全局变量 7.6 数据的存储类别 7.7 内部函数与外部函数 本章小结 习题参考答案 7.1 函数概述 7.1 函数概述 7.2 函数的定义和调用 7.2.1 函数定义 函数的定义就是编写函数的程序以实现函数的功能。下面举一个函数定义及调用的例子。 例7.1 编程序,求长方形的面积 #include stdio.h main( ) { float x,y,s; float area(float x,float y); /*对调用函数的声明*/ scanf(%f%f,x,y); s=area(x,y); /*调用函数*/ printf(The area is:%.2f\n,s); } float area(float x,float y) /*定义area函数*/ { float z; z=x*y; return z; /*返回函数值*/ } 程序运行结果如下: 8↙ The area is:40.00 上面的程序由两个函数组成,一个是main( )函数,一个是自定义函数area( )。area( )函数有两个参数x和y,area( )函数的功能是计算x和y的乘积,并将其值返回到主函数。通过这个程序可以看出函数定义的一般形式。 定义的一般形式: 函数类型说明 函数名(形式参数说明表列) 函数首部 { 变量说明部分 执行部分 函数体 } 说明: (1)函数类型说明是用来说明该函数返回值的类型,如果没有返回值,则其类型说明符应为“void”,即空类型。例如,在例7-1中的area函数是一个float类型的函数,其返回的函数值是一个浮点数。如果函数的返回值是整型,可以省略,因此也可以说函数类型缺省时,其类型为int型。 (2)函数名必须是一个合法的标识符,与变量的命名规则相同,且不能与其他函数或变量重名。 (5)当函数需要返回一个确定的值时,须通过“return(表达式);”语句来实现,其中表达式就是函数的返回值,例return(z);,即返回z的值。如果没有return语句,或return语句不带表达式并不表示没有返回值,而是返回一个不确定的值。若不希望有返回值,则必须在定义函数时说明“函数类型”为“viod”型。 例 7.2 下面定义一个函数max()求两个整数的最大值 int max(int x ,int y) {int z; if(xy) z=x; else z=y; return z; } main() {int a,b,c; a=10; b=12; c=max(a,b); printf(max=%d,c); } 运行结果: max=12 该自定义函数类型为int,有两个形式参数x和y,类型均为int(注意形式参数的说明格式)。 例7.3 下面定义一个无参、且无返回值的函数prinstar(),在主函数中调用该函数。 void printstar() {printf(****************************\n); } main() { int i; printstar(); printf(\tHow are you\n); printstar(); } 程序运行结果: **************************** How are you **************************** 该函数的类型说明为“void”,所以为无返回值的函数,而且没有形式参数。 7.2.2函数调用 定义一个函数,目的是为了使用,因此要在程序中调用该函数才能执行它的功能。 1.函数调用的一般形式: 函数名(实际参数表列); 2.函数调用的方式 按函数在程序中出现的位置来分,可以有以下两种函数调用方式。 函数语句 把函数调用作为一条语句。一般形式为: 函数名(实际参数表列); 这种方式常用于调用一个没有返回值的函数,只要求函数完成一定的操作。如例7.3中的printstar()函数,调用方式为 printstar(); 又如我们前面所用到的printf( )和scanf( )函数都是以函数语句的方式调用函数。 函数表达式 函数作为表达式中的一部分出现在表达式中,以函数返回值参与表达式的运算。 这种方式要求函数是有返回值的。例如: a=abs(-3); 函数abs()是表达式的一部分,它的值赋给变量a。 3.函数调用的过程 在执行函数调用时,实际上系统要完成以下过程: (1)被调函数的所有形式参数分配内存,再计算实际参数的值,并一一对应地赋予相应的
您可能关注的文档
最近下载
- 中式烹调师高级工理论知识练习题库(附参考答案).docx
- 中央厨房卫生规范与管理指南.docx VIP
- 2025年人工智能工程师(高级)题库.docx VIP
- 社会团体成立登记表.docx
- MITSUBISHI三菱MDS-EM EMH系列规格说明书.pdf
- 高血压科普健康宣教ppt课件.pptx VIP
- 2025入党积极分子发展对象考试题库(含答案).pdf VIP
- YD-T 4244-2023电信网和互联网数据分类分级技术要求与测试方法.pdf VIP
- 2025年新版成人考试模拟真题及答案.doc VIP
- 0523S01019-理解当代中国:汉英翻译-2023版人才培养方案课程教学大纲.docx VIP
文档评论(0)