清华大学:《C++语言程序设计》课程教学资源(PPT课件)第三章 函数

C++语言程序设计 第三章函数
第三章 函数 C++语言程序设计

C++语言程序设计 本章主要内容 函数的声明和调用 函数间的参数传递 内联函数 ●带默认形参值的函数 函数重载 C++系统函数 x
C++语言程序设计 2 本章主要内容 ⚫ 函数的声明和调用 ⚫ 函数间的参数传递 ⚫ 内联函数 ⚫ 带默认形参值的函数 ⚫ 函数重载 ⚫ C++系统函数

C++语言程序设计 本章学习线索 °1.什么是函数? °2.如何使用函数? ●3.函数的调用机制是什么? °4.函数的参数传递机制是什么? 5.理解内联函数、函数重载、和带 默认形参值的函数。 x
C++语言程序设计 3 本章学习线索 ⚫ 1. 什么是函数? ⚫ 2. 如何使用函数? ⚫ 3. 函数的调用机制是什么? ⚫ 4. 函数的参数传递机制是什么? ⚫ 5. 理解内联函数、函数重载、和带 默认形参值的函数

C++语言程序设计 升么是函数 数 的。程序设计中函数的概念是借用数学中的 声函数术语。最小的功能模块 明。在面向过程的程序设计中,函数是模块 与划分的最基本单元 使。面向对象程序设计中,函数是对类功能 用的抽象。 °函数由函数名、参数表、返回值、以及 实现函数功能的语句序列构成。大 程序通过函数调用实现功能衔接
C++语言程序设计 4 什么是函数 ⚫ 程序设计中函数的概念是借用数学中的 函数术语。最小的功能模块。 ⚫ 在面向过程的程序设计中,函数是模块 划分的最基本单元。 ⚫ 面向对象程序设计中,函数是对类功能 的抽象。 ⚫ 函数由函数名、参数表、返回值、以及 实现函数功能的语句序列构成。 ⚫ 程序通过函数调用实现功能衔接。 函 数 的 声 明 与 使 用

C++语言程序设计 例3-1编写一个求X的n次方的函数 数 include 函数声明 的 using name space std double ower(double x, int n) int main 声明与使用 函数调用 cout < 5 to the ower 2 is < power (5, 2)<< endli double power (double x, int n) double val 1.0 函数定义 while (n val val*x; 5 to the power 2 return(val)i is 25
C++语言程序设计 5 例3-1编写一个求x的n次方的函数 #include using namespace std; double power (double x, int n); int main() { cout << "5 to the power 2 is " << power(5,2) << endl; } double power (double x, int n) { double val = 1.0; while (n--) val = val*x; return(val); } 函 数 的 声 明 与 使 用 5 to the power 2 is 25 函数声明 函数调用 函数定义

C++语言程序设计 函教的定义 数函数定义的语法形式 的 声类型标识符函数名(形式参数表) 明 若无参数, 写void 与 语句序列 使 是被初始化的内部 变量,寿命和可见 用 返回值类型 性仅限于函数内部 若无返回值,写void x
C++语言程序设计 6 函数的定义 函数定义的语法形式 类型标识符 函数名(形式参数表) { 语句序列 } 函 数 的 声 明 与 使 用 若无参数, 写void 是被初始化的内部 变量,寿命和可见 返回值类型 性仅限于函数内部 若无返回值,写void

C++语言程序设计 函教的定义 ●形式参数表 数的声明与使用 程序通过参数把信息传给函数,因此需要给参数指 定类型和名称 name,, name2, ., namen 函数的返回值 函数可以把数据返回给调用者,函数返回值类型。 由 return语句给出,例如: return 0i 无返回值的函数(void类型),不必写 retur 语句
C++语言程序设计 7 函数的定义 ⚫ 形式参数表 程序通过参数把信息传给函数,因此需要给参数指 定类型和名称。 name1 , name2 , ..., namen ⚫ 函数的返回值 函数可以把数据返回给调用者,函数返回值类型。 – 由 return 语句给出,例如: return 0; – 无返回值的函数(void类型),不必写return 语句。 函 数 的 声 明 与 使 用

C++语言程序设计 数的调用 调用前先声明函数原型: 数的声明与使用 在主调函数中,或程序文件中所有函数之外,按 如下形式说明: 类型标识符被调用函数名(含类型说明的形 参表); 含义是告诉编译器有一个函数可以使用了,以及 使用该函数的参数和返回值要求。 调用形式 函数名(实参列表); 嵌套调用 函数可以嵌套调用,但不允许嵌套定义。次 ●递归调用 x 函数直接或间接调用自身
C++语言程序设计 8 函数的调用 ⚫ 调用前先声明函数原型: – 在主调函数中,或程序文件中所有函数之外,按 如下形式说明: 类型标识符 被调用函数名 (含类型说明的形 参表); – 含义是告诉编译器有一个函数可以使用了,以及 使用该函数的参数和返回值要求。 ⚫ 调用形式 函数名(实参列表); ⚫ 嵌套调用 – 函数可以嵌套调用,但不允许嵌套定义。 ⚫ 递归调用 – 函数直接或间接调用自身。 函 数 的 声 明 与 使 用

C++语言程序 3-2 函教定义声明调用举例 数 #inc ludesiostream 的 using name space std 函数原型描述 //函数的声明 了函数接口 声明 double add(double x, double y) 与/函数的定义,返回值是 double类型 Ts double add( double x, double y) 用( double z; z-Xty cout<<x+ <y = <<zend return(z)
C++语言程序设计 9 例3-2 函数定义声明调用举例 #include using namespace std; //函数的声明 double add(double x,double y); //函数的定义,返回值是double类型 double add(double x,double y) { double z; z=x+y; cout<<x<<"+"<<y<<"="<<z<<endl; return(z); } 函 数 的 声 明 与 使 用 函数原型描述 了函数接口

C++语言程序 3-2 函教定义声明调用举例 数 int main i double a=0.5, b=1.0 的 //不同参数形式调用 cout<<"add(1.5,2.5)="<add(1.5,2.5)<end1; 声明与使用 cout<< add(a, b)="add(a, b)<endl cout< add(2*a, a+b)=<<add (2*a, a+b)<endl //以表达式语句方式调用 double c=2*add(a, b): cout<<"c=<<c<<endl ad(2*a,b);//以语句方式调用函数addQ //以函数参数形式调用函数addC cout<<add(a, add(a, b))="<<add(a, add(a, b))kndl return O
C++语言程序设计 10 例3-2 函数定义声明调用举例 int main() { double a=0.5,b=1.0; //不同参数形式调用 cout<<"add(1.5,2.5)="<<add(1.5,2.5)<<endl; cout<<"add(a,b)="<<add(a,b)<<endl; cout<<"add(2*a,a+b)="<<add(2*a,a+b)<<endl; //以表达式语句方式调用 double c=2*add(a,b); cout<<"c="<<c<<endl; add(2*a,b); //以语句方式调用函数add() //以函数参数形式调用函数add() cout<<"add(a,add(a,b))="<<add(a,add(a,b))<<endl; return 0; } 函 数 的 声 明 与 使 用
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第二章 C++简单程序设计.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第一章 绪论.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)课程简介(李莉).ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十二章 异常处理.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十一章 流类库与输入/输出.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十章 C++标准模板库.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第九章 群体类和群体数据的组织.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第八章 多态性.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第七章 继承与派生.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第六章 数组、指针与字符串.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第五章 C++程序的结构.ppt
- The MIT Press:How to Design Programs——An Introduction to Computing and Programming.pdf
- 《计算机基础——系统安全》课程教学资源(PPT课件)第8章 安全协议.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第7章 认证 Authentication.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第10章 信息系统安全等级与标准.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第2篇 信息系统安全信任体系 第6章 数据加密与数据隐藏修改.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第2章 黑客.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第1章 病毒及其防治.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第3篇 信息系统安全体系结构与评估标准 第9章 信息系统安全体系结构.ppt
- 《计算机基础——系统安全》课程教学资源(PPT课件)第5章 信息系统安全事件响应.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第四章 类与对象.ppt
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第一章 绪论(主讲:贾永红).pps
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第二章 基本概念.pps
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第三章 图像变换.pps
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第四章 图像增强.pps
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第五章 图像复原与重建.pps
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第六章 图像编码与压缩.pps
- 武汉大学遥感信息工程学院:《数字图像处理》课程教学资源(PPT课件讲稿)第七章 图像分割.pps
- 计算机基础知识(PPT讲稿).ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)导课.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)第二章 CAD/CAM子系统的体系结构.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)第一章 概述.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)第四章CAD(Drawing or Drafting)软件中的图形处理技术、相关算法(思路)及软件界面、功能简介.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)06.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)05.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)第五章 CAM/CAM的建模(造型)技术.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)09.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)07.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)08.ppt
- 《CAD/CAM/CAPP》课程教学资源(PPT讲稿)10.ppt