- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 函数new
第八章 函 数 §8.1 概述 一个C程序可由一个主函数和若干个函数构成。 由主函数调用其他函数,其他函数也可以互相调用。 例8.1 main() { printstar(); print_message(); printstar(); } printstar() { printf( “ ********** \n”); } print_message() { printf(“How do you do ! \n”); } 说明: 1、一个源程序文件由一个或多个函数组成。 一个源程序文件是一个编译单位。 2、一个C程序由一个或多个源程序文件组成。这样 可以分别编写、分别编译,提高调度效率。 3、C程序的执行从main函数开始,在main函数中 结束整个程序的运行。 4、所有函数都是平行的,即函数不能嵌套定义, 函数可以互相调用,但不能调用main函数。 5、从用户使用的角度看,函数有两种: 标准函数(库函数)和用户自己定义的函数 6、从函数的形式看,函数分为两类: 无参函数和有参函数 函数种类 从用户使用的角度看: ① 标准函数,即库函数。是由系统提供的,用户不必自己定义这些函数,可以直接使用它们。注意:不同的C系统提供的库函数的数量和功能会有一些不同,当然许多基本的函数是共同的。 ② 用户自己定义的函数。用以解决用户的专门需要。 从函数的形式看,函数分两类: ①无参函数 ②有参函数 §8.2 函数定义的一般形式 一、无参函数的定义形式 类型标识符 函数名( ) { 函数体 //包括声明部分和执行部分 } 例如: int max( int x, int y) { int z; z=xy?x:y; return (z); } 总结:函数的定义 一般格式 §8.3 函数参数和函数的值 关于形参和实参的说明: 1. 形参在未出现函数调用时,并不占内存中的存储单元。只有在发生函数调用时,函数中的形参才被分配内存单元。在调用结束后,形参所占的内存单元也被释放。 2. 实参可以是常量、变量或表达式, 如:c = max(3,a+b);但要求它们有确定的值。在调用时将实参的值赋给形参(如果形参是数组名,则传递的是数组的首地址,而不是变量的值) 3. 在被定义的函数中,必须指定形参的类型; 4. 实参与形参的类型应一致。 5. C语言规定,实参对形参的数据传递是“值传递”,即单向传递。 在内存中,实参单元与形参单元是不同的单元。 二、函数的返回值 1. return语句 return (表达式); 或:return 表达式; 或:return; 或:函数执行到最后遇到 “}” return语句的用途有二: (1)用于结束函数的执行并返回到调用者; (2)用来向调用者传递一个返回值。 注意:该语句对非void函数适用。 2. 函数值的类型。如: int max(x,y) char letter(c1, c2) double min(x, y) 在C语言中,凡不加类型说明的函数,自动按int型处理。省写函数类型时,用Turbo C 2.0编译时能通过,但用Turbo C++3.0编译时不能通过,因为C++要求所有函数都必须指定函数类型。 3. 如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。 main() { float a, b; int c; scanf(“%f,%f”,a,b); c=max(a,b); printf(“Max is %d\n”,c); } max(float x, float y) { float z; z=xy? x:y; return (z); } 4. 如果被调函数中没有return语句,则函数带回一个不确定值。如: 5. 为了明确表示“不带回值”,可以用“void ”定义“无类型”(或称“空类型”)。如: §8.4 函数的调用 一、函数声明的一般形式 函数类型 函数名(参数类型1,参数类型2, …, 参数类型n); 或 函数类型 函数名(参数类型1 参数名1,参数类型2 参数名2 …); 如: int print(char format, …); char fun2(int i, char p1);
您可能关注的文档
- 第6章 继电器—接触器控制.ppt
- 第6章 大气环流2012.ppt
- 第6章 指令流水线.ppt
- 第6章 计算机网络及安全.ppt
- 第6章 计算机网络基础与应用-2.ppt
- 第6章 触发器mm.ppt
- 第6章 生物污染监测.ppt
- 第6章3程序设计基础.ppt
- 第6章2 机械原理.ppt
- 第6章 汽车的操作稳定性与检测-第3节.ppt
- 2025年低空物流无人机网络监管框架报告.docx
- 借助AI技术的教育平台学生在线学习行为数据挖掘与分析教学研究课题报告.docx
- 《基于“双证书”制度的职业院校人才培养质量提升策略》教学研究课题报告.docx
- 2025年低空物流无人机网络技术评估报告.docx
- 智能教育平台在高中教育扶贫中的应用研究教学研究课题报告.docx
- 单元培优易错题第二单元:百分数(二)-六年级数学下册培优卷(人教版).pdf
- 2025年3D打印建筑技术商业化政策支持报告.docx
- 2025年跨境融资数字货币支付场景分析报告.docx
- 2025年跨境贸易结算数字货币监管政策报告.docx
- 2025年智慧港口自动化装卸设备绿色物流效率研究报告.docx
有哪些信誉好的足球投注网站
文档评论(0)