- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c入门学习第5章f
理解什么是函数:过程模块 区分函数声明与定义 了解数学函数:数学库函数 掌握全局和局部变量的用法 了解递归函数 老板(主调函数或主函数)命令(传递参数)一个工人(被调函数或工作函数)去执行一个任务,当任务完成时就回来报告(返回)。 功能 -对程序进行模块化处理 -函数内部定义的变量都是局部变量 -参数是一个函数调用另一个函数时所传递的数据信息 -参数是函数的局部数据 函数的好处 -分而治之的方法是程序的开发更易管理 -软件的可重用性 -避免代码重复 函数定义格式 返回值类型 函数名称(参数列表) { 语句序列 } -函数名称:有效的标识符 -返回值类型:返回给调用者一个结果,该结果的数据类型(默认为int) -void类型表明该函数不返回任何结果 -参数列表:用逗号隔开的列表 -函数声明:符合此函数定义的头部描述(除去花括号部分),称为函数声明 -函数原型:函数纳入类型检查是得益于函数原型的规范,函数原型要求函数声明与函数定义的头部一致 -函数声明 -函数调用 -函数定义 int maximum(int x,int y,int z); //函数声明或函数原型 int main() { int a=100, b=150,c=80; int d=maximum(a,b,c); //函数调用之前必须出现过函数声明 printf(“%d\n”,d); } int maximum(int x,int y,int z) //函数定义 { if(xy) return xz?x:z; else return yz?y:z; } 运行结果: 150 定义了3个参数 返回一个int值 将a,b,c传给对应参数x,y,z 头文件 - 包含函数声明的函数库 stdlib.h ,math.h,etc - 导入头文件用编译指令 #include文件名 #includemath.h 自定义头文件 自己创建一个文件,包含若干函数声明 保存为 filename.h 在使用该文件处 #include “filename.h” 全局变量:变量在整个程序中都可读可写,它在函数的外部,先于函数声明或定义 局部变量:变量只在一个函数内可读可写 例如: int main() { int m=n; //错:n无定义 //... } int n; //全局变量 void func() { int s; //局部变量 n=s; //ok:访问全局变量 //... } 调用时, 主调函数将实际参数传递(拷贝)给被调函数的形式参数(保护现场,实际参数值不改变) 主调函数将控制权交给被调函数,使其开始工作(主调函数工作被挂起) 被调函数中的形式参数属于局部变量,可任意改变 被调函数工作完成后返回函数值,同时控制权交还给主调函数 int maxium (int a,int b,int c) { return (ab)?(ac:a:c):(bc?b:c); } int main() { int x=3,y=5,z=12; int d = maxium(x,y,z); printf(“the maximum is %d\n”, d); printf(“%d,%d,%d\n”,x,y,z); // x,y,z的值没变 } static 关键字标记局部变量 静态局部变量存放在内存的全局数据区 静态局部变量的用途 例子:factorials 5! = 5 * 4 * 3 * 2 * 1 式子变形: 5! = 5 * 4! 4! = 4 * 3! …… Fibonacci序列:0,1,1,2,3,5,8 每个数是前两个数之和 fib(n) = fib(n -1) + fib(n-2) fibonacci函数的代码 Long fibonacci(long n) { if(n ==0 || n==1) return n; else return fibonacci(n-1) + fibonacci(n-2) } f( 3 ) f( 1 ) f( 2 ) f( 1 ) f( 0 ) return 1 return 1 return 0 return + + return 内联函数的需要性 解决办法 先声明后调用 内联函数的函数体限制 重载的需要性 匹配重载函数的顺序 重载函数的内部实现 默认参数的目的 默认参数的
您可能关注的文档
最近下载
- 2021广东选调生面试真题(1月10日).pdf
- 2025年高级项目管理师复习资料多选题(高项有答案) .pdf VIP
- Haier海尔洗衣机MS100-BZ886U1使用说明书手册参数图解图示pdf电子版下载.pdf VIP
- 新部编五年级语文下册第四单元(教案).pdf
- 2024款长城哈弗H6 1.5T2.0T两驱ProMaxUltra_用户手册驾驶指南车主车辆说明书电子版.pdf
- 第一章 世界的物质性及发展规律-马克思主义基本原理讲稿.pdf
- 培训机构校长述职报告.pptx
- 固体矿产勘查规范总则.pdf VIP
- 做账实操-合伙企业的利润分配规则.doc VIP
- 高中数学课堂教学改革实施方案.docx VIP
文档评论(0)