- 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.1 函 数 7.1.1 设计C语言程序就是设计函数 无论涉及的问题是复杂还是简单,规模是大 还是小,用C语言设计程序,任务只有一种,就是 编写函数,至少也要编写一个main函数。执行C程 序也就是执行相应的main函数。即从main函数的第 一个前花括号开始,依次执行后面的语句,直到最 后的后花括号为止。 模块化程序设计有一个原则:就是每个模块的 规模一般不能太大(有人认为要控制在40~60行之 间),以便于阅读,便于检查其中的错误。在C语 言中,减少主函数规模的一项基本措施就是通过调 用其它函数来实现主函数需要的一些功能。 7.1.2 函数结构 为了定义函数,必须首先了解函数的结构。一个C语言 函数的结构形式如下: 函数头 { 函数体 } 1. 函数头 一个函数的函数头的结构如下: 函数类型 函数名 (形式参数表列) (1)函数类型。指定函数值的类型,即函数返回值的类 型。 (2)函数名。函数名必须采用合法的用户标识符。 (3)圆括号。在函数名后面的一对圆括号是“函数运算 符”,表示进行函数运算,函数运算符具有很高的运算优先级 别。 (4)形式参数表。形式参数表由写在一对圆括 号(函数运算符)中的一系列参数组成。每一个参数由 一个类型符和一个参数名组成。参数名也应当是合法 的用户关键字。函数可以没有参数,这时在函数运算 符内写一个“void”,也可以空允白。 2. 函数体 函数体由一些语句组成。主要是三种类型的语 句: ●声明语句:声明在函数中要使用的变量等程序 实体。 ●用来实现函数的功能的可执行语句:包括若干 流程控制语句和表达式语句。 ● return语句:使流程返回到调用处。 当函数执行到return语句时,将停止本函数的执 行,将流程送回到调用处。同时,编译器将函数分 为三类进行处理: ●纯粹计算型函数,如sqrt( )和sin( )。这类函 数将返回一个计算结果。 ●完成一项具体工作,返回完成的成败。如 printf( )执行成功时,返回显示的字节数;失败时, 返回一个负整数。 ●只执行一个过程的函数,不产生返回值,其 类型应定义为void。 例 求一个整数的绝对值的函数 int absolutevalue (int x) { return (x=0?x:-x); } 3. 函数中变量的作用域 作用域指的是一个程序段中的代码的作用范围,在一个 函数中定义的变量只在本函数中有效,在其它函数中不能使 用这个变量,因此说,该变量的作用域是它所在的函数(从定 义该变量的行开始到函数末尾)。即使在不同的函数中定义了 同名的变量,它们数也指的是不同的变量。 例 #include stdio.h int func(int x) { x=5; return x+3; } 4. 空函数 空函数是一个不产生任何有效操作的函数,但 它却是一个合法的C函数。例如函数 void null (void){} 就是一个空函数。 空函数多使用在模块化程序的设计或测 试中。一般首先写好main函数,确定需要调 用的函数,然后逐步编写这些函数,如果在 有一些函数还未编写好时想对已有俩编好的 函数进行调试,可以先用空函数(函数名用将 来使用的实际函数名,如sort)放在程序中原 定的位置上,这样就可以调试程序的其它部 分,等以后再逐步补上。 7.1.3 函数定义与函数声明 1. 函数定义 函数定义是按照C语言的语法规则引入新 的函数,并提供如下信息: ● 函数的返回值类型(如果有); ● 参数的个数及类型和名称; ● 调用函数时要执行的代码; ● 函数的有效性。 2. 函数声明 函数声明是对所用到的函数的特征进行必要的 声明。编译系统以函数声明中给出的信息为依据, 对调用表达式进行检测,例如,形参与实参类型是 否一致,使用函数返回值的类型是否正确,以保证 调用表达式与函数之间的参数正确传递。 声明语句提供的必要信息包括:函数名,函数 的类型,函数参数的个数、排列次序以及每个参数 的类型。函数声明的一般格式为: 类型标识符 函数名(类型标识符形参,类型标 识符形参,…); 设有一函数的定义为: double func (double a, int b, char c) { /* 函数体*/ } 与之相应的函数声明应为: double func (double x, int y, char z);
您可能关注的文档
最近下载
- LBT 339-2025 北方地区 绿色食品设施莴笋生产操作规程.pdf VIP
- 基础护理学病情观察及危重患者的抢救和护理.pptx VIP
- 八年级下册道德与法治电子课本(附2023年教材变动内容).doc VIP
- 旅游概论-旅游者.pptx VIP
- 亚龙156A电气安装-电气培训PPT(项目二).ppt VIP
- 【公开版】《2023年美年健康体检大数据蓝皮书》.pdf VIP
- 《枫桥夜泊》的教学设计一等奖 .docx VIP
- 大类资产配置新框架,比特币和黄金:新旧时代的“代货币”.pdf VIP
- 2025年冰雪旅游行业投资回报分析报告.docx
- 2025年中国国家重点实验室建设行业供需策略分析及市场供需预测报告.docx
文档评论(0)