- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言周彩英04函数
第4章 函数 §4.1 概述 C语言源程序可由一个主函数和若个辅助函数组成。 由主函数调用其他函数。其他函数也可互相调用。 §4.1 概述 main( ) { printstar( ); print_message( ); printstar( ); } printstar( ) { printf( “ ********** \n”); } print_message( ) { printf(“How do you do ! \n”); } §4.1 概述 说明: 1. 一个源程序文件由一个或多个函数组成。一个源程序文件是一个编译单位。 2. C程序的执行从main 函数开始,在main函数中结束。 3. 所有函数不能嵌套定义,可以互相调用,但不能调用main函数。 4. 从用户使用的角度看,函数有两种: 标准函数(库函数)和自定义函数 5. 从函数的形式看,函数分为两类: 无参函数和有参函数 §4.1.1 函数的定义 一、无参函数的定义形式 类型标识符 函数名( ) { 函数体 } §4.1.1 函数的定义 §4.1.1 函数的定义 §4.1.2 函数的返回和返回值 一、函数的返回 1. 被调用函数执行到最后的“}”时,返回 2. 被调用函数执行到return语句时,返回 §4.1.2 函数的返回和返回值 二、函数的返回值 1. return语句 return (表达式); 或:return 表达式; 或:return; return用途有二: (1)用于结束函数的执行并返回到调用者; (2)用来向调用者传递一个返回值。 注意:该语句对非void函数适用。 §4.1.2 函数的返回和返回值 2. 函数类型 如:int max(int x,int y) char letter(char c1, char c2) double min(int x, double y) C语言默认函数类型为int型。 3. 如果函数类型和return中表达式的值不一 致,则以函数类型为准。如: §4.1.2 函数的返回和返回值 main( ) { float a, b, c; scanf(“%f,%f”,a,b); c=max(a,b); printf(“Max is %f\n”,c); } max(float x, float y) { float z; z = xy? x: y; return (z); } §4.1.2 函数的返回和返回值 4. 可用“void ”定义“无类型”函数。如: §4.1.3 函数的声明和调用 §4.1.3 函数的声明和调用 例: main( ) { ………… c = max(a ,b); ………… } int max(int x, int y) {…………} §4.1.3 函数的声明和调用 1.函数语句 如:printf(“One world”); 2.函数表达式 如:c=max(a,b); 3.函数参数 如:m=max(a, max(b,c)); printf(“%d”, max(a,b)); §4.1.3 函数的声明和调用 三、函数声明的一般形式 函数类型 函数名(类型1, 类型2, …, 类型n); 或: 函数类型 函数名(类型1 名1, 类型2 名2…); §4.1.3 函数的声明和调用 §4.1.3 函数的声明和调用 例:计算C(m,n)=m!/(n!(m-n)!) 分析:求阶乘是公用模块 程序清单如下: §4.1.4 形式参数和实在参数 §4.1.4 形式参数和实在参数 §4.1.4 形式参数和实在参数 §4.1.4 形式参数和实在参数 说明: 1. 实参可以是常量、变量或表达式, 如:c = max(3,a+b); 2. 定义函数时,必须指定形参的类型; 3. 实参与形参的类型应一致或兼容。 4. C语言规定,实参对形参的数据传递是“值传递” 。 5. 函数未调用时,形参并不占内存中的存储单元。在函数调用时,形参才被分配内存单元。调用结束后,形参所占的内存单元被释放。 §4.2 带自定义函数的程序设计 §4.2 带自
文档评论(0)