
第5章函数函数概述5.1E5.2函数的定义5.7函数声明5.3函数的调用5.4函数间的参数传递5.5函数与数组5.6局部变量和全局变量5.8带有缺省参数的函数
0 第5章 函数 5.1 函数概述 5.2 函数的定义 5.7 函数声明 5.3 函数的调用 5.4 函数间的参数传递 5.5函数与数组 5.6 局部变量和全局变量 5.8 带有缺省参数的函数

5.1函数概述C++语言程序的结构特点>程序整体由一个或多个称为函数的程序块组成;>每个函数都具有各自独立的功能和明显的界面。main只果只ghhi
1 5.1 函数概述 C++语言程序的结构特点: ➢程序整体由一个或多个称为函数的程序块组成; ➢每个函数都具有各自独立的功能和明显的界面

5.2函数定义函数定义就是编写完成函数功能的程序块函数定义的一般格式()T
2 5.2 函数定义 函数定义 就是编写完成函数功能的程序块 1、函数定义的一般格式 () { }

2、函数值类型函数返回值所具有的数据类型与变量类型相同(1)返回值:可以是带符号或unsigned的char、int、short、long型以及float、double型(2)函数没有返回值:类型是void
3 2、函数值类型 函数返回值所具有的数据类型与变量类型相同。 (1)返回值: 可以是带符号或unsigned的char、int、short、long型 以及float、double型 (2)函数没有返回值: 类型是void

2、函数值类型(3)return语句格式:return?在中,说明函数执行结束,同时释放掉分配的内存;(可以有多个)把函数值送到调用表达式中,故返回值类型与函数?值类型需一致
4 2、函数值类型 (3)return 语句格式:return ; ① 在 中,说明函数执行结束,同时释放掉 分配的内存;(可以有多个) ② 把函数值送到调用表达式中,故返回值类型与函数 值类型需一致

3、形式参数(1)形参概念函数可以带有零个或多个形式参数。形参是函数的内部变量。即形式参数的生存期和作用域仅限于函数内部。>只有当函数被调用,形式参数才被赋予调用函数传递来的实参值
5 3、形式参数 (1)形参概念 ➢ 函数可以带有零个或多个形式参数。 ➢ 形参是函数的内部变量。即形式参数的生存期和 作用域仅限于函数内部。 ➢ 只有当函数被调用,形式参数才被赋予调用函数 传递来的实参值

(2)形式参数声明形式参数可以在函数体中引用,可以输入、输出、赋值或参与运算。参数说明格式为:《类型>,,.….,例 : double grav(double m1, double m2, double distance)6
6 (2)形式参数声明 形式参数可以在函数体中引用,可以输入、输出、赋值或 参与运算。 参数说明格式为: ,,., 例: double grav(double m1, double m2, double distance)

例5.1编写求阶乘n!的函数算法分析:计算公式为:n!=n×(n-1)×...×3×2×1,且0!=1在子函数中只需一个数据,故设一个参数n。1>2、计算结果要返回主函数,故设一个变量result。>3、n的阶乘可在一重循环中实现
7 例5.1 编写求阶乘n!的函数 算法分析: 计算公式为: n!= n×(n-1)×.×3×2×1,且0!=1 ➢1、在子函数中只需一个数据,故设一个参数n。 ➢2、计算结果要返回主函数,故设一个变量result。 ➢3、n的阶乘可在一重循环中实现

例5-1:函数 fac()计算阶乘n!int fac(int n)/Example5-1:函数fac()计算阶乘nint result = 1;if(n1)Yresult*=n; Il result=result*n;n--;7121return result;8
8 例5-1:函数fac()计算阶乘n! int fac(int n) // Example 5-1:函数 fac()计算阶乘n! { int result = 1; if(n1) { result *= n; // result = result *n; n-; } return result; }

5.7函数声明1、(函数和变量一样,在使用之前要先声明,声明使用函数原型2、E函数原型声明的一般形式:《函数值的类型标识符>()3、省略函数原型的情况先定义,后引用
9 5.7 函数声明 1、函数和变量一样,在使用之前要先声明,声 明使用函数原型。 2、函数原型声明的一般形式: (); 3、省略函数原型的情况 先定义,后引用