- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章函数讲述
第4章 函数 4.1 函数概述 4.2 函数的定义与调用 4.2.1 函数的定义 一般格式 说明: 对被调用函数要求: 必须是已存在的函数 库函数: #include *.h 用户自定义函数: 函数类型说明 函数说明 : 一般形式: 函数类型 函数名(形参类型 [形参名],….. ); 作用:告诉编译器函数类型、参数个数及类型,以便检验。 函数定义与函数说明不同! 函数说明位置:程序的数据说明部分(函数内或外) 被调用函数定义出现在主调函数之前,可不作函数说明。 4.4 函数的嵌套与递归 4.4.1 函数的嵌套调用 函数的嵌套调用是指在一个函数调用另一个函数的过程中,被调函数又调用了另一个函数。 C规定:函数定义不可嵌套,但可以嵌套调用函数; 且嵌套层数不限。 * * 处理的问题越复杂,main()函数中的语句就会越多,编写程序的难度就越大。 为了将程序的难点分解,往往将一个大的 任务分解到几个独立的程序块中完成,这种独 立的程序块称为模块。这样的程序设计方法称 为模块化程序设计。 C语言中,函数是实现程序模块化的必要 手段。一个C程序由若干个函数组成。 函数是实现某个功能的独立程序段。 4.1.1 C程序的结构 一个C语言程序是由若干个函数组成的,其中有且仅有 一个main函数。 main函数是执行程序的入口。 main函数中可以调用其它函数,其他函数间也可相互 调用。 C语言的这种函数结构可使程序设计人员将一个复杂 问题分解为若干相对独立而简单的问题。每个子问题分别 由不同的函数实现。这些函数的编写可以由不同的编程人 员完成,从而达到模块化程序设计的目的。 模块化程序设计: 基本思想:将一个大的程序按功能分割成一些小模块 特点: 各模块相对独立、功能单一、结构清晰、接口简单 控制了程序设计的复杂性 缩短开发周期 避免程序开发的重复劳动 易于维护和功能扩充 开发方法: 自上向下,逐步分解,分而治之 4.1.2 函数分类 1)从用户角度分 标准函数(库函数):由系统提供 用户自定义函数 2)从函数形式分 有参函数 和 无参函数 3)从函数有无返回值分 有返回值函数 和 无返回值函数 使用库函数时: 1)用预处理命令#include将该函数所在的头文件包含到 程序中。 2)要正确使用一个库函数,取得预期的结果,需要准确 理解库函数,函数的功能描述和函数原型。 使用库函数应注意: 1、函数功能 2、函数参数的数目和顺序,及各参数意义和类型 3、函数返回值意义和类型 4、需要使用的包含文件 例 有返回值有参函数 int max(int x, y) { int z; z=xy?x:y; return(z); } 例 有返回值有参函数 int add(int x, int y) { int z; z=x+y; return(z); } 例 无返回值无参函数 void printstar( ) { printf(“**********\n”); } 或 void printstar(void ) { printf(“**********\n”); } 合法标识符 函数返回值类型 缺省int型 无返回值void 函数体 函数类型 函数名(含类型说明的形参表) { 说明部分 语句部分 } 例 空函数 void dummy( ) { } 函数体为空 函数类型 函数名(形参表) 形参类型说明 { 说明部分 语句部分 } 传统风格: 例 有返回值有参函数(传统风格) int max(x,y) int x,y; { int z; z=xy?x:y; return(z); } 例4.1 输入两个正整数m, n(mn),计算从m个元素 中任取n个元素的组合数。 计算公式为: 在该问题的求解中,需要三次计算阶乘值:如果有一个函数可以提供求阶乘的功能,调用三次
您可能关注的文档
- 第4章ALTERA的CPLD与FPGA器件讲述.ppt
- 第4章SAS数据步的建立讲述.ppt
- 第4章PLC的基本逻辑指令及编程讲述.ppt
- 第4章LPC2000系列ARM硬件结构(10~13)讲述.ppt
- 第4章SQL语言基础讲述.ppt
- 第4章UFO报表管理讲述.ppt
- 第七章舞会礼仪(商务礼仪)详解.ppt
- 第4章+空间数据采集与处理讲述.ppt
- 第4章_ANSYS入门与准备讲述.ppt
- 第四章会计信息题目+答案详解.doc
- 5.3.1函数的单调性(教学课件)--高中数学人教A版(2019)选择性必修第二册.pptx
- 部编版道德与法治2024三年级上册 《科技提升国力》PPT课件.pptx
- 2.7.2 抛物线的几何性质(教学课件)-高中数学人教B版(2019)选择性必修第一册.pptx
- 人教部编统编版小学六年级上册道德与法治9 知法守法 依法维权(第一课时)课件.pptx
- 三年级上册品德道德与法治《学习伴我成长》.pptx
- 部编版小学道德与法治六年级上册6 人大代表为人民 课件.pptx
- 部编版小学道德与法治六年级上册1感受生活中的法律第一课时课件.pptx
- 2.5.2圆与圆的位置关系(教学课件)-高中数学人教A版(2019)选择性必修第一册.pptx
- 2.5.1直线与圆的位置关系-(教学课件)--高中数学人教A版(2019)选择性必修第一册.pptx
- 14.1.1 同底数幂的乘法(教学课件)-初中数学人教版八年级上册.pptx
文档评论(0)