版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第5章 函数 1内容提要函数定义、函数调用、函数原型、函数返回值难点:函数的参数传递与返回值 2函数定义(definition)一般形式: 返回值类型 函数名(类型 参数1,类型 参数2, )函数体return 表达式;如果没有参数,则应该用void注明返回值类型与return语句配合如果不需要返回值,则应该用void定义返回值类型,同时return语句之后不再需要任何表达式当函数执行到return语句时,就中止函数的执行,返回到调用它的地方. 教材164页 3例5.1a 计算两个整数的平均数教材165页/*函数功能: 计算平均数 函数入口参数: 整型x,存储第一个运算数 整型y,存储第二个运
2、算数 函数返回值: 平均数*/int Average(int x, int y)int result;result = (x + y) / 2;return result;4函数调用函数调用 一般格式: 函数名(实参表列)单向值传递调用函数时,必须提供所有的参数提供的参数个数、类型、顺序应与定义时相同5函数调用 有返回值时放到一个数值表达式中,如c = max(a,b);作为另一个函数调用的参数,如 c = max(max(a,b),c); printf(%dn, max(a,b);无返回值时函数调用表达式,如display(a,b);6例5.1b 使用了Average函数的main() ma
3、in()int a = 12;int b = 24;int ave;ave = Average(a, b);printf(Average of %d and %d is %d.n,a, b, ave); 教材165-167页7函数的参数和函数的值形式参数(形参)在定义函数时函数名后面括弧中的变量名必须指定形参的类型实际参数(实参)在主调函数中调用一个函数时,被调函数的函数名后面括弧中的参数(可以是一个表达式) 实参可以是常量、变量或表达式8课堂练习 自编程序:从键盘输入两个数,求出其最大值,要求使用函数完成求最大值,并在主函数中调用该函数.9函数间的参数传递形参和实参在内存中占用不同的内存单元
4、当主调函数调用被调函数时发生数据的传递, 只由实参传递给形参,且传递的是参数的值,即单向传递实参类型必须与形参相符在函数被调用时才分配形参的存储单元。10函数间的参数传递图示main()int a = 12;int b = 24;int ave;ave = Average(a, b);printf(Average of %d and %d is %d.n, a, b, ave); 教材165-167页int Average(int x, int y) int result; result = (x + y) / 2; return result;main() int a = 12; int b
5、 = 24; int ave; ave = Average(a, b); printf();数据传递执行顺序11函数的定义与使用小结函数定义: 被调函数必须是存在的函数(库函数或自定义函数)函数声明:(也称函数原型)在主调函数中,对被调函数进行声明格式:返回值类型标识符 被调用函数名 (含类型说明的形参表)函数调用 一般格式: 函数名(实参表列) 教材167页12例5.1 #include /*函数功能: 计算平均数 函数入口参数: 整型x,存储第一个运算数 整型y,存储第二个运算数 函数返回值: 平均数*/int Average(int x, int y)int result;result
6、= (x + y) / 2;return result;main()int a = 12;int b = 24;int ave = Average(a, b);printf(Average of %d and %d is %d.n, a, b, ave); 教材167页哪些是形参?哪些是实参?那个语句返回值?返回谁的值?返回给谁?13例5.1 #include int Average(int x, int y); /*声明Average()函数*/ main()int a = 12;int b = 24;int ave = Average(a, b);printf(Average of %d and %d is %d.n, a, b, ave);/*函数功能: 计算平均数 函数入口参数: 整型x,存储第一个运算数 整型y,存储第二个运算数 函数返回值: 平均数*/int Average(int x, int y)int result;result = (x + y) / 2;return result; 教材168页函数定义?函数原型?调用?14课堂练习 3. 自编程序:编程计算p=k!/(m)!的值,提示,用函数完成求整数的阶乘且输入的数值在15以内。如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年作风效能监督考核试题题库及答案
- 2026年村镇银行工作人员招聘考试真题及答案
- 躯干肌肉训练核心要点
- 家教机会的评估
- 呼吸肌训练课件
- 护理计划估计评估
- 失眠症常见症状解析及护理技术培训
- 针灸疗法常见病
- 基金的风险评估
- 保定市辅警招聘考试题库及答案
- 2026年甘肃八年级地生会考真题试卷+答案
- 核心素养导向下的小学五年级英语Unit 3 What would you like 大单元教学设计与实施教案
- 英语河北保定市2026届高三年级第一次模拟考试(保定一模)(4.7-4.9)
- 2022年温州保安员考试官方指定模拟试题及答案全解
- 派出所内部卫生制度
- 河道治理课件
- 2025重症医学同步习题与全真模拟试题及答案
- 被压迫者的教育学
- 中医门诊部申请书
- 2025年工会社会工作者招聘笔试模拟试题库及答案
- 职教高考英语复习基础语法知识词法专题一名词课件
评论
0/150
提交评论