第四章菡数 4.1函数的定义与调用 4.6函数的递归调用 4.2函数的参数传递, 4.7函数的一些高级议题 返回值及函数原型说明 4.3全局变量和局部变量 4.8C++的系统库函数 4.4函数调用机制 4.9头文件与多文件结构 4.5作用域与存储类型 4.10编译预处理
4.1 函数的定义与调用 4. 5 作用域与存储类型 4.4 函数调用机制 4.3 全局变量和局部变量 4.2 函数的参数传递, 返回值及函数原型说明 4.10 编译预处理 4. 9 头文件与多文件结构 4. 8 C++的系统库函数 4. 7 函数的一些高级议题 4. 6 函数的递归调用
4.1数的定义与调用 4.1.1函数概述 4.1.2函数的定义 4.13函数的调用
4.1.1 函数概述 4.1.2 函数的定义 4.1.3 函数的调用
4.l.1數撬述 main funI( fun( fun30) Fun 10) Fun2_1()Fun22() 图41函数调用层次关系
main ( ) fun1( ) fun2( ) fun3( ) Fun1_1( ) Fun2_1( ) Fun2_2( ) 图4.1 函数调用层次关系
4.12数的定义 1.无参函数 2.有参函数
1. 无参函数 2. 有参函数
1元参画部 定义格式为: []<函数名〉(void 区<函数体》} 例:下面函数的功能是打印一个表头 void TableHead ok cout<<ixxxx********xx<<endl cou l* example */<<endl cout< As *e%e*火;kk endl
定义格式为: [] (void) {} 例: 下面函数的功能是打印一个表头 void TableHead ( ) { cout<<″****************″<<endl; cout<<″* example *″<<endl; cout<<″****************″<<endl; }
2有参画 有参函数的定义格式为 数据类型>函数名>(1,,… 例:下面函数的功能是返回两个整数中较大一个的值 max(int a, int b return(a>=b?a: b);
有参函数的定义格式为 [] ( [,,…] {} 例: 下面函数的功能是返回两个整数中较大一个的值 max (int a, int b){ return(a>=b?a:b); }
4.13的调用 无参函数的调用格式为 函数名>( 有参函数的调用格式为 K函数名入实际参数表)
无参函数的调用格式为: ( ) 有参函数的调用格式为: (实际参数表)
4.1.3數的用 例4,1】输入两个实数,输出其中较大的数。其中求两个实数中的较大数用 函数完成 程序如下 ain()函 文件名:Ex41.cp #includesiostream.h> 调用 函数 float max(float x, float yR max(2.5,4.7 max(2.5,4.7 return(x>=y?x:y); 主程序后续 return 4.7 void minoT 语句 float x, y; cout>x>>y; cout<<x<"和"<y<<"中较大数为<max(x2y)end;
main( )函 数 调用 max(2.5,4.7 ) 函数 max(2.5,4.7 ) 主程序后续 return 4.7 语句 【例4.1】 输入两个实数,输出其中较大的数。其中求两个实数中的较大数用 函数完成。 程序如下: //文件名:Ex4_1.cpp #include float max(float x,float y){ return(x>=y?x:y);} void main(){ float x,y; cout>x>>y; cout<<x<<"和"<<y<<"中较大数为"<<max(x,y)<<endl; }
4.2画部的参传遘、回愎及画数原 型呗 4.2.1函数的参数传递及传值调用 4.2.2函数返回值 4.2.3函数原型说明
4.2.1 函数的参数传递及传值调用 4.2.3 函数原型说明 4.2.2 函数返回值
4.21画的参传遘及传僩用 【例4.2】说明实参和形参对应关系的示例 x/文件名:Ex42c四p n=3 x=4.6 #include c=‘ai #includesmathh float power( float x,intm){∥求x的n次幂 float pow=l 调用 函数 while(n--) pow*=x; power(4.6, 3) power(4.6, 3) return pow; 3 void minot int n=3; float x=4.6 主程序后续语 return 句 97.336 char c='a’; cout<<"power("<<<<,<<<<")=<power(x, n)<<end cout<<"power ("<<c<<, <<n<<")="<<power(c, n))<<endl;DU cout<<power(<<n<<, <<x<<=<<power(n, x)<<endl
调用 power(4.6,3 ) 函数 power(4.6,3 ) return 97.336 主程序后续语 句 【例4.2】 说明实参和形参对应关系的示例。 //文件名:Ex4_2.cpp #include #include float power(float x,int n){ //求x的n次幂 float pow=1; while(n--) pow*=x; return pow; } void main(){ int n=3; float x=4.6; char c='a'; cout<<"power ("<<x<<' , '<<n<<")="<<power(x,n)<<endl; cout<<"power ("<<c<<' , '<<n<<")="<<power(c,n)<<endl; cout<<"power ("<<n<<' , '<<x<<")="<<power(n,x)<<endl; }