- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2 外部函数 (1) 在定义函数时,在前面加上extern,则表示该函数为外部函数,可供其他文件调用。 如 extern float fun(float x, float y) { … … } 或 float fun(float x, float y) { … … } (2) 在需要调用此函数的文件中,用extern 声明所用函数是外部函数。如 extern float fun(float x, float y); 或 float fun(float x, float y); 第7章 函 数 第7章 函 数 7.1 函数定义和函数调用 7.2 函数的嵌套调用和递归调用 7.3 局部变量和全局变量 7.4 变量的存储类别 7.5 内部函数和外部函数 7.1 函数定义和函数调用 7.1.1 函数定义 【例 7.1】已知五边形各边及对角线的长度,求面积。 a b c d e f g s1 s2 s3 #include stdio.h #include math.h float area(float x,float y,float z) { float s,a; s=(x+y+z)/2; a=sqrt(s*(s-x)*(s-y)*(s-z)); return a; } 分析:s1= area(a,b,f) ; s2= area(c,g,f) ; s3= area(d,e,g) ; void main() { float a,b,c,d,e,f,g; float s1,s2,s3,s; scanf(%f%f%f%f%f,a,b,c,d,e); scanf(%f%f,f,g); s1= area(a,b,f) ; s2= area(c,g,f) ; s3= area(d,e,g) ; s=s1+s2+s3; printf(s=%f\n,s); } a b c d e f g s1 s2 s3 一般形式: 类型 函数名(类型 形参,类型 形参,……) { 定义部分 语句序列 } float area(float x,float y,float z) { float s,a; s=(x+y+z)/2; a=sqrt(s*(s-x)*(s-y)*(s-z)); return a; } 【例7.2】 编写函数,在一行上输出10个 * 字符。 #include stdio.h void print() { int i; for(i=0;i10;i++) printf(%c,*); printf(\n); return; } void main() { print(); } 运行结果: ********** 7.1.2 return 返回语句 一般形式: return; return 表达式; return (表达式); 7.1.3 函数调用 一般形式: 函数名(实参,实参,……) 函数名( ) 例如: s1=area(a,b,f); print(); 【例7.3】编写函数,求两个数的最大值。 float max(float x,float y) { float maxvale; maxvale=xy?x:y; return (maxvale); } void main() { float a,b,c,m; scanf(%f%f%f,a,b,c); m=max(max(a,b), c); printf(m=%f\n,m); } 一般形式: 类型标识符 函数名 (类型 形参,类型 形参,……); 或 类型标识符 函数名 (类型 ,类型 ,……) ; 7.1.4 函数声明 例如: float max(float x,float y); 或 float max(float,float); 【例7.4】对被调函数声明的例子 #includestdio.h void main() { float add(float x,float y); float a,b,c; scanf(%f,%f,a,b); c=add(a,b); printf(sun is %f,c); } float add(float x,float y) { float z; z=x+y; return(z); } 7.1.5函数间的参数传递 c
您可能关注的文档
- 计算机基础教程Windows XP与Office 2003 第三版 教学课件 作者 林卓然 第8章(XP与2003).ppt
- 计算机基础教程Windows XP与Office 2003 第三版 教学课件 作者 林卓然 第9章(XP与2003).ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第1章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第2章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第3章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第4章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第5章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第6章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第7章.ppt
- 计算机基础教程WindowsXP与OfficeXP 修订本 教学课件 作者 林卓然 WinXP第8章.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第8章_编译预处理.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第9章_指针.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第10章_结构体与共用体.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第11章_文件.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第12章_数据结构与算法.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第13章_软件工程基础.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 第14章_数据库设计基础.ppt
- 计算机基础与C语言程序设计(第二版) 教学课件 作者 习题解答.doc
- 计算机基础与Visual Basic程序设计 教学课件 作者 978 7 302 28844 2 第八章 数组.ppt
- 计算机基础与Visual Basic程序设计 教学课件 作者 978 7 302 28844 2 第二章vb6.0概述.ppt
最近下载
- 爱玛客,设施管理龙头的崛起之路.pptx VIP
- 设备全生命周期管理ppt课件.pptx VIP
- 一种变截面核反应堆厂房舱室及其骨架机构.pdf VIP
- 《智能网联汽车运行与维护》中职技工全套教学课件.pptx
- 猕猴桃黄化病防治与原理ppt课件.ppt VIP
- 辐射环境培训课件.pptx VIP
- 标准图集-22G101-3 混凝土结构施工图平面整体表示方法制图规则和构造详图-独立基础、条形基础、筏形基础、桩基础.pdf VIP
- 设计工程变更风险评价表.pdf VIP
- 2020电梯制造与安装安全规范第2部分 电梯部件的设计原则计算和检验.docx VIP
- 一种开洞核反应堆厂房舱室及其骨架机构.pdf VIP
文档评论(0)