- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
函数的定义格式: [函数返回值类型] 函数名([数据类型 形式参数1, 数据类型 形式参数2,…,数据类型 形式参数n]) { [说明部分;] /*函数体*/ [语句部分;] } 其中:函数类型是该函数返回值的数据类型,可以是整型、浮点型、字符型以及无值型(表示函数没有返回值)、指针型等。 例: int sql1(int m,int n,char c) /*说明一个整型函数*/ float sum() /*说明一个浮点型函数*/ void stu(int n) /*说明一个无返回值的函数*/ 关于函数的说明: 函数名称和形式参数可以是C语言中任何合法的标识符。函数名称后面一定要有一对圆括号(如果有参数,则它们放在圆括号之内),由它表示该标识符是函数名。 在一个程序中,函数的名称应是唯一的。 形式参数只要在同一函数中唯一即可,可与其他函数中的变量同名。 不能在一个函数内部再定义函数。 从语法规则上讲,函数类型可以是除函数和数组以外的任何类型。但对一个具体函数的定义来说,它的类型是惟一的,并且通常与其返回值的类型一致。如果不一致,系统自动转换。注意,缺省的函数类型是int型。 如果有参数,则应对它们的类型一一作出说明。 例: max(float x, float y) { float z; z=xy?x:y; return z; } main() { float a=1.5,b=0.5; float c; c=max(a,b); printf(“max os %f\n”,c); } 7.2.2 定义函数的方法 函数的返回值 函数的返回值是由return语句完成,格式为: return(表达式); return 表达式; return; 说明: 若不用return,C语言规定,当被调用函数执行到最后一个右花括号时也能将控制权交给调用函数。 若调用函数未利用被调函数返回值,该返回值舍弃。 一个函数可以有多个return语句,但函数在执行过程中遇到的第一个return即返回主调函数。 int sum100( ) { int i,t=0; for (i=1; i=100; i++) t+=i; return (t);} main( ) { int s; s=sum100( ); printf(%d\n, s); } 2.形参和实参的特点 (1)实参可以是常量、变量、表达式、函数等。无论定义的实参是何种类型,在进行函数调用时,它们都必须具有确定的值,以便程序在运行时把这些值传送给形参。 (2)形参变量只有在被调用时系统才为其分配内存单元,在调用结束后,随即释放所分配的内存单元。 (3)函数调用中发生的数据传送是单向的,即只能把实参的值传送给形参。 (4)实参和形参在数量上、类型上、顺序上应严格一致。 7.4对被调用函数的声明和函数原型 函数声明是函数调用前的准备,函数声明的形式采用函数原型的形式 [函数返回值类型] 函数名([数据类型 形式参数1, 数据类型 形式参数2,…,数据类型 形式参数n]); 例:float max(float x, float y); 说明: 函数声明可以是一个独立语句,或与普通变量一起出现在一个说明语句中。 例: float x,max(float, float); 2. 函数声明不是函数定义! 3. 函数名前无函数类型,则缺省为int型 7.4对被调用函数的声明和函数原型 函数说明的位置(重要!) 被调用函数的说明位置在该函数被调用前且是在所有函数的外部时,后面所有位置可以调用该函数; 函数声明放在调用函数内部说明部分时,作用范围只在调用函数内部。 7.9.2 局部变量的存储类别 7.9.2 局部变量的存储类别 自动变量的特点: ⑴ 内存分配 调用函数或执行分程序时在动态存储区为其分配存储单元,函数或分程序执行结束,所占内存空间即刻释放。 ⑵ 变量的初值 定义变量时若没赋初值,变量的初值不确定;如果赋初值则每次函数被调用时执行一次赋值操作。 ⑶ 生存期 在函数或分程序执行期间。 ⑷ 作用域 自动变量所在的函数内或分程序内。 全局变量(外部变量):在函数外部定义的变量。 作用域:从定义变量的位置开始到本源文件结束。如在其作用域内的函数或分程序中定义了同名局部变量,则在局部变量的作用域内,同名全局变量暂时不起作用。 全局变量 int a = 5; void f(int x, int y) { int b,c; b=a+x; c=a-y; printf(%d
您可能关注的文档
- 镇海中学2016基因工程习题.ppt
- 正常人体结构学第二章_第二节_结缔组织.ppt
- 制作基础教程40版【合集版+图片排版设计】.pptx
- 质量工程师 第2章 供应商质量控制与顾客关系管理(中级).ppt
- 质量工程师(中级)-综合知识 chap3.ppt
- 质量工程师初级讲义(2013版).docx
- 质量中级工程师《质量专业理论与实务》讲义第一章06.ppt
- 中北大学机械CADCAM技术第七章计算机辅助工艺设计.ppt
- 中北大学系统集成第一章电子系统设计.ppt
- 中德外网施工方案(改完)2017721.doc
- 中国国家标准 GB 10395.6-2025农业机械 安全 第6部分:植物保护机械.pdf
- GB 10395.6-2025农业机械 安全 第6部分:植物保护机械.pdf
- GB 10395.7-2025农业机械 安全 第7部分:联合收割机、饲料收获机、棉花收获机和甘蔗收获机.pdf
- 中国国家标准 GB 10395.7-2025农业机械 安全 第7部分:联合收割机、饲料收获机、棉花收获机和甘蔗收获机.pdf
- 《GB 10395.7-2025农业机械 安全 第7部分:联合收割机、饲料收获机、棉花收获机和甘蔗收获机》.pdf
- GB/T 42076.2-2025生物技术 细胞计数 第2部分:量化计数方法性能的实验设计与统计分析.pdf
- 中国国家标准 GB/T 42076.2-2025生物技术 细胞计数 第2部分:量化计数方法性能的实验设计与统计分析.pdf
- 《GB/T 42076.2-2025生物技术 细胞计数 第2部分:量化计数方法性能的实验设计与统计分析》.pdf
- GB/T 46735.1-2025高温蓄电池 第1部分:一般要求.pdf
- 《GB/T 46735.1-2025高温蓄电池 第1部分:一般要求》.pdf
最近下载
- 高盛中国股票五年计划推介高盛第十五个五年计划投资组合Goldman Sachs-Your 5~Year Plan in China Equities-Introducing GS 15th FYP Portfolio.pdf VIP
- 第九章--网络思想政治教育-《思想政治教育学原理》-马工程.ppt VIP
- NB╱T 47065.4-2018 容器支座第4部分:支承式支座.pdf VIP
- JCT993-2006膨胀聚苯乙烯板抹面砂浆.pdf VIP
- 2025年护理质量管理评价标准考核试题(附答案).docx VIP
- 外科护理讲课课件ppt全新PPT.pptx VIP
- NB╱T 47065.5-2018 容器支座第5部分:刚性环支座.pdf VIP
- 粤教粤科版科学六年级上册全册单元期中期末测试题(含答案).pdf VIP
- 弹性桩m法计算所需系数(用于快速内插取值).xls VIP
- 角的度量.2 角的度量课件.ppt VIP
原创力文档


文档评论(0)