华中科技大学C++第三章-函数

上传人:油条 文档编号:14213602 上传时间:2017-09-04 格式:PDF 页数:45 大小:882.98KB
返回 下载 相关 举报
华中科技大学C++第三章-函数_第1页
第1页 / 共45页
华中科技大学C++第三章-函数_第2页
第2页 / 共45页
华中科技大学C++第三章-函数_第3页
第3页 / 共45页
华中科技大学C++第三章-函数_第4页
第4页 / 共45页
华中科技大学C++第三章-函数_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《华中科技大学C++第三章-函数》由会员分享,可在线阅读,更多相关《华中科技大学C++第三章-函数(45页珍藏版)》请在金锄头文库上搜索。

1、第三章第三章函数函数C+程序设计程序设计2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 2本章内容在结构化程序设计中,函数是将任务进行模块划分的基本单位。一个函数实现一项功能。在面向对象程序设计中,函数是对数据的一项操作,也是实现一项功能。在结构化程序设计中,函数是将任务进行模块划分的基本单位。一个函数实现一项功能。在面向对象程序设计中,函数是对数据的一项操作,也是实现一项功能。2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 33.1 函数的定义与调用3. 5 作用域与标识符的可见性3.4 函数调用机制3.3 全局变量和局部变量3.2 函数的参数传递

2、 ,返回值及函数声明3.9 头文件与多文件结构3.6 存储类型与标识符的生命期3.8 函数的一些高级议题3.7 函数的递归调用本章内容2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 43.1 函数的定义与调用函数的定义与调用3.1.1 函数概述3.1.2 函数定义3.1.3 函数调用2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 5函数是C+程序的基本组成模块。通过函数,可以把一个复杂任务分解成为若干个易于解决的小任务。充分体现逐步细化的设计思想。组成C+程序的若干函数中, 有一个称为main()(Winmain())函数,是程序执行的入口 ,它可以

3、调用其他函数,但不可以被调用。而其他 一般函数既可以调用也可以被调用 。函数概念的引入:入口函数:3.1.1 函数概述2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 6图3.1 函数调用层次关系main ( )fun2( )fun1( ) fun3( )funa( ) funb( ) func( )3.1.1 函数概述程序执行的入口2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 73.1.1 函数概述库函数和自定义函数:库函数 或 标准函数 ,是由编译系统预定义的,如一些常用的数学计算函数、字符串处理函数、图形处理函数、标准输入输出函数等。库函数都按

4、功能分类,集中说明在不同的头文件中 。用户只需在自己的程序中包含某个头文件,就可直接使用该文件中定义的函数。用户根据需要将某个具有相对独立功能的程序定义为函数,称 自定义函数 。2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 8函数头函数体数据类型数据类型函数名函数名(形式参数表)(形式参数表) 语句序列定义函数返回值的数据类型。若无返回值, void函数返回值由 return 语句给出3.1.2 函数的定义函数运行时需要的数据,由主调函数提供。若无, void或者省略函数体可以为空,称为空函数。2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 93.

5、1.2 函数的定义 无参函数 无参函数/打印一个表头void TableHead ( ) coutn;while(n=b?a:b); 有参函数的参数表中列出所有 形式参数 的类型和参数名称。各参数即使类型相同也必须分别加以说明。形式参数简称形参,只能是变量名 ,不允许是常量或表达式。void delay(long n)int i;for (i=0;iusing namespace std;float max(float a,float b)return(a=b?a:b);int main()float x,y;coutxy;coutabc;area=TriangleArea(a,b,c);if

6、(area=-1) coutchoice;while(choice=4);switch(choice)case 1: account_report(); break;case 2: engineering_report(); break;case 3: marketing_report(); break; return 0;2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 27void menu_print() cout0);for(j=0;jab;cout=a)int t; /具有块域t=a; a=b; b=t; /交换 a,b的值couta=atb=bendl;retu

7、rn 0;上述程序若在最后一个 cout语句处增加:couttendl;则编译时会提示错误,因为变量 t的作用域只在 if语句中,其它地方 不可见 。3.5.1 块域2012/4/23 网络与计算中心基础教研室网络与计算中心基础教研室 45由 VC+运行,结果如下:输入两整数:3 5调用前:实参 a=3,b=5调用中 交换前:形参 a=3,b=5交换后:形参 a=5,b=3调用后:实参 a=3,b=5交换失败操作系统运行状态及返回地址main()3a5bmain()运行状态及返回地址swap()3a5b3t353.5.1 块域局部变量具有局部作用域,使得程序在不同块中可以使用同名变量。这些同名变量各自在自己的作用域中可见,在其它地方不可见【例 3.8】 设计函数完成两数交换,用主函数进行测试。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号