欢迎来到天天文库
浏览记录
ID:45165238
大小:996.00 KB
页数:82页
时间:2019-11-10
《第4章函数和预处理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第4章函数与预处理4.1概述4.2定义函数的一般形式4.3函数参数和函数的值4.4函数的调用4.5内置函数4.6函数的重载4.7函数模板4.8有默认参数的函数4.9函数的嵌套调用4.10函数的递归调用4.11局部变量和全局变量4.12变量的存储类别4.13变量属性小结4.14关于变量的声明和定义4.15内部函数和外部函数4.16预处理命令4.1概述模块化程序设计基本思想:将一个大的程序按功能分割成一些小模块特点:各模块相对独立、功能单一、结构清晰、接口简单控制了程序设计的复杂性提高元件的可靠性缩短开发周期避免程序开
2、发的重复劳动易于维护和功能扩充开发方法:自上向下,逐步分解,分而治之一个程序中函数调用的示意图。例4.1在主函数中调用其他函数。#includeusingnamespacestd;voidprintstar(void){cout<<″******************************″<3、print_message();//调用print_message函数printstar();//调用printstar函数return0;}运行情况如下:******************************WelcometoC++!******************************C++是模块化程序设计语言C++是函数式语言必须有且只能有一个名为main的主函数C++程序的执行总是从main函数开始,在main中结束函数不能嵌套定义,可以嵌套调用主函数以外的函数大多是被封装在类中的函数分类从用户4、角度标准函数(库函数):由系统提供用户自定义函数从函数形式无参函数有参函数使用库函数应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型3、函数返回值意义和类型4、需要使用的包含文件4.2定义函数的一般形式一般格式合法标识符函数返回值类型缺省int型无返回值void函数体函数类型函数名(形参类型说明表){说明部分语句部分}例有参函数intmax(intx,inty){intz;z=x>y?x:y;return(z);}例有参函数intmax(intx,y){intz;z=x>y?x:y;return(z5、);}例空函数voiddummy(void){}函数体为空例无参函数voidprintstar(void){cout<<″******************************″<6、和函数的值形参与实参形式参数:定义函数时函数名后面括号中的变量名实际参数:调用函数时函数名后面括号中的表达式例:计算x的立方#includeusingnamespacestdfloatcube(floatx){return(x*x*x);}intmain(){floata,product;cout<<"Pleaseinputvalueofa:";cin>>a;product=cube(a);cout<<"Cubeof"<7、duct××××1.21.21.728例4.2调用函数时的数据传递。#includeusingnamespacestd;intmax(intx,inty){intz;z=x>y?x:y;return(z);}intmain(){inta,b,c;cout<<″请输入两个整数:″;cin>>a>>b;c=max(a,b);cout<<″max=″<y?x:y;re8、turn(z);}例比较两个数并输出大者#includeusingnamespacestd;intmain(){inta,b,c;intmax(intx,inty);cin>>a>>b;c=max(a,b);cout<<"Maxis”<y?x:y;r
3、print_message();//调用print_message函数printstar();//调用printstar函数return0;}运行情况如下:******************************WelcometoC++!******************************C++是模块化程序设计语言C++是函数式语言必须有且只能有一个名为main的主函数C++程序的执行总是从main函数开始,在main中结束函数不能嵌套定义,可以嵌套调用主函数以外的函数大多是被封装在类中的函数分类从用户
4、角度标准函数(库函数):由系统提供用户自定义函数从函数形式无参函数有参函数使用库函数应注意:1、函数功能2、函数参数的数目和顺序,及各参数意义和类型3、函数返回值意义和类型4、需要使用的包含文件4.2定义函数的一般形式一般格式合法标识符函数返回值类型缺省int型无返回值void函数体函数类型函数名(形参类型说明表){说明部分语句部分}例有参函数intmax(intx,inty){intz;z=x>y?x:y;return(z);}例有参函数intmax(intx,y){intz;z=x>y?x:y;return(z
5、);}例空函数voiddummy(void){}函数体为空例无参函数voidprintstar(void){cout<<″******************************″<6、和函数的值形参与实参形式参数:定义函数时函数名后面括号中的变量名实际参数:调用函数时函数名后面括号中的表达式例:计算x的立方#includeusingnamespacestdfloatcube(floatx){return(x*x*x);}intmain(){floata,product;cout<<"Pleaseinputvalueofa:";cin>>a;product=cube(a);cout<<"Cubeof"<7、duct××××1.21.21.728例4.2调用函数时的数据传递。#includeusingnamespacestd;intmax(intx,inty){intz;z=x>y?x:y;return(z);}intmain(){inta,b,c;cout<<″请输入两个整数:″;cin>>a>>b;c=max(a,b);cout<<″max=″<y?x:y;re8、turn(z);}例比较两个数并输出大者#includeusingnamespacestd;intmain(){inta,b,c;intmax(intx,inty);cin>>a>>b;c=max(a,b);cout<<"Maxis”<y?x:y;r
6、和函数的值形参与实参形式参数:定义函数时函数名后面括号中的变量名实际参数:调用函数时函数名后面括号中的表达式例:计算x的立方#includeusingnamespacestdfloatcube(floatx){return(x*x*x);}intmain(){floata,product;cout<<"Pleaseinputvalueofa:";cin>>a;product=cube(a);cout<<"Cubeof"<7、duct××××1.21.21.728例4.2调用函数时的数据传递。#includeusingnamespacestd;intmax(intx,inty){intz;z=x>y?x:y;return(z);}intmain(){inta,b,c;cout<<″请输入两个整数:″;cin>>a>>b;c=max(a,b);cout<<″max=″<y?x:y;re8、turn(z);}例比较两个数并输出大者#includeusingnamespacestd;intmain(){inta,b,c;intmax(intx,inty);cin>>a>>b;c=max(a,b);cout<<"Maxis”<y?x:y;r
7、duct××××1.21.21.728例4.2调用函数时的数据传递。#includeusingnamespacestd;intmax(intx,inty){intz;z=x>y?x:y;return(z);}intmain(){inta,b,c;cout<<″请输入两个整数:″;cin>>a>>b;c=max(a,b);cout<<″max=″<y?x:y;re
8、turn(z);}例比较两个数并输出大者#includeusingnamespacestd;intmain(){inta,b,c;intmax(intx,inty);cin>>a>>b;c=max(a,b);cout<<"Maxis”<y?x:y;r
此文档下载收益归作者所有