- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计电子教案7
7.1 函数基础与C程序结构
7.2 函数的定义和声明
7.3 函数的调用
7.4 函数的嵌套与递归
7.5 变量的存贮类别 ;7.1 函数基础与C程序结构 ;7.1.2 函数概述 ;7.2 函数的定义和声明 ; 定义说明:
1)存贮类型 (分缺省默认extern和static两种)
说明函数的存贮类型(即规定函数可被调用的范围)。①extern指定为外部函数,外部函数可以被任何函数调用;不指定即为缺省默认的extern; ②static为静态函数,指定和它只能在同一文件中定义的函数调用 。
2) 类型: 指定函数返回值类型
①特殊类型为void :又称为“空类型函数” ,若无函数返回值而只完成某项工作,函数类型则为void,此时,函数相当于子程序,若无形参不可省掉括号( ) ,此时最好将参数表指定为void ;函数体内结束处可有可无return语句。 ; ②指定了函数返回值的类型(非void):则函数有返回(一个)??定的类型值,此时,函数体必以“return (返回值表达式)”结束/尾且给函数名赋值。故“类型” 决定了返回值表达式的类型。函数的类型可以为任何基本类型、结构体和共用体类型。其中 int型函数定义时可以省略。
3) 函数名
函数名一般不要超过6个字符长,如max(),factor()等。注意:外部函数(主执行函数void main()之前/外的外层)的名字是作用于整个程序,因而外部函数相互之间不能同名。; 静态函数/内部函数可以和外部函数同名,但同一文件或模块中的并行/同层函数不能同名;而不同层函数名或其中定义的局部变量可同名而互不干扰(后讲)。
4) 参数表(形参表)
形式参数表说明函数参数的类型、名称和数目。参数数目可是零个或多个;如果没有参数,只写一对括号(此为函数标志,不可省略) 。有多个参数时之间用逗号隔开。它应和调用处的实参在个数、类型上一一对应。
函数的参数表也称为形参表/哑元。形参类型的定义可在括号内的形参处也可在函数体的前面(使用前)定义。如:
int max(int x,int y) int x,int y; int max(x, y); 多数为前者。; 形参说明的一般形式为
(类型名1 形参名1, 类型名2 形参名2, ……)
5) 函数体和函数返回值
函数中{…}括起来的部分称为函数体,函数体由说明部分和执行部分组成。说明部分是局部说明,执行部分是完成具体任务的可执行语句序列。函数名通过函数体中结束/尾“return [(…)]”语句得到函数值,而无函数返回值的void函数多无“return [(…)]”语句(也可用return结束)。
注意:局部说明中说明/定义的变量,同形参一样,规定了其有效范围局限于该函数内部,不能由其它任何并行/同层/外部函数调用,因该函数被调用执行完毕时,其变量、形参和嵌入式(内嵌式)函数即释放掉了。 ; 函数定义一般置于main()之前,也可先声明原型(即仅书写函数头,此时可仅书写括号中的形参类型而省掉形参名,且该行后有“;”)而在任何地方定义(此时函数头和函数体一并书写)。
如:double power(int, int); 和double power(int x, int n);是等价的。power函数是double类型,它有两个int参数。
函数应用遵循“先定义,后调用”的原则。
函数体语法上是一个带“{ …… }”复合语句。例:
#include stdio.h
long square(long); /*先函数声明*/
void main()
{ …… result=square(in_num); /*函数调用*/
…… }
long square(long x) //后函数定义
{ …. } ;归 纳:;主函数main()开始;例 7.1 用户自定义函数求任意数的平方。 ; 例 7.2 计算x的n次方,x=2,-3;(n=1, 2, … 9)。
#include stdio.h
void main()
{ int i;
double power(int, int); /* 先函数声明*/
for(i=1; i10; i++)
printf(“power(2, %d)=%8.4f, power(-3, %d)=%11.4
您可能关注的文档
最近下载
- 关于十二矿优化劳动组织的调研报告.docx VIP
- 沪粤版九年级物理上册知识点整理.pdf VIP
- 关于十二矿优化劳动组织的调研报告.doc VIP
- 2025年财会类中级会计职称中级会计实务-中级会计实务参考题库含答案解析(5套试卷).docx VIP
- 旅游咨询项目创业计划书.pptx VIP
- 西师版数学六年级上册全册教案.pdf VIP
- 2025江西鹰潭市公安局面向社会招聘留置看护勤务辅警87人笔试备考试题及答案解析.docx VIP
- 浅析互联网金融平台的风险与监管——以蚂蚁金服为例.doc VIP
- 旅游咨询创业计划书.pptx VIP
- 【0181】46页PPT数字化建设项目总体规划蓝图(豪华版).pptx VIP
文档评论(0)