




已阅读5页,还剩72页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
首 页单击 PrintScreenSyaRq:复制整个屏幕。组合键 Alt + PrintScreenSyaRq:复制当前窗口。C+程序设计实验内容安排进度表信科1周序信科2周序应数周序实 验 内 容222实验一 C+6.0 开发环境应用入门(2学时)333实验二 C+简单程序设计(6学时)建议完成实验任务14444实验二 C+简单程序设计(6学时)建议完成实验任务5555实验二 C+简单程序设计(6学时)建议完成实验任务6。若完成实验二,做实验三。666实验三 函数的应用(2学时)777实验四 类与对象(6学时)888实验四 类与对象(6学时)999实验四 类与对象(6学时)101010实验五 C+程序的结构(2学时)111111实验六 数组、指针与字符串(4学时)121212实验六 数组、指针与字符串(4学时)131313实验七 继承与派生(4学时)141414实验七 继承与派生(4学时)151515实验八 多态性(4学时)161616实验八 多态性(4学时)171717实验九 群体类和群体数据可给参考答案。海南大学信息科学技术学院实 验 报 告评定成绩指导教师实验课程: C+程序设计课程课内实验 学号: 姓名: 班级: 同组成员: 完成日期: 2012 年 月 日实验一 C+6.0 开发环境应用入门(2学时)(第1章 绪论)一、实验目的 1. 了解Visial C+ 6.0 的特点。2. 熟悉Visual C+ 6.0 的开发环境。3. 学习用Visual C+ 6.0编写标准的C+控制台程序。二、实验内容 使用Visual C+ 建立一个非图形化的标准C+程序,编译、运行例2-1,即以下程序:#include using namespace std;void main()cout”Hello!n”;cout”Welcome to C+!n”;三、实验步骤参考内容:Visual C+开发环境简介例2-11.(操作)启动Visual C+6.0开发环境 从“开始”菜单中选择:“程序” | Microsoft Visual Studio 6.0 | Microsoft Visual Studio 6.0,显示Visual C+ 6.0开发环境主窗口。2.(操作)创建一个项目 单击“文件”菜单中的“新建.”选项,显示“新建”对话框。 单击“工程”标签,在该选项卡中,选择“Win32 Console Application”(Win32控制台应用程序)。在“位置”文本框中指定一个路径,在“工程名称”文本框中输入一个名字“lab1_1”。 单击“确定”按钮。弹出如下对话框。 选择“一个空工程”单选项,再单击“完成”,弹出“新建工程信息”框。 单击“确定”(完成工程的建立)。弹出“lab1_1Microsoft Visual C+”开发环境主窗口。3.(操作)建立C+源程序文件 选择菜单命令:“工程”|“增加到工程”|“新建”。 弹出“新建”对话框。单击“文件”标签,选择“C+ Source File”,填入“文件名”:lab1_1。 单击“确定”(完成新建C+源程序文件)。4.(验证,例2-1)编辑C+源程序文件内容 接上,显示“lab1_1Microsoft Visual C+”开发环境主窗口。内嵌“lab1_1.cpp”文件编辑窗口,在源程序编辑区输入程序。 选择菜单命令“文件”|“保存”,单击左侧的“FileView”(文件视图)标签,展开其中的文件夹,得到我们常用的一个操作界面。5.(验证,例2-1)建立并运行可执行程序 选择菜单命令“组建”|“组建lab1_1.exe”。若你正确输入了源程序,此时便成功地生成了可执行程序lab1_1.exe。若程序有语法错误,则屏幕下方的状态窗口中会显示错误信息。根据错误信息对源程序进行修改后,重新选择菜单命令“组建”|“组建lab1_1.exe”,建立可执行程序。 选择菜单命令“组建”|“! 执行lab1_1.exe”运行程序。运行结果如下: 按任意键可退出该DOS窗口。6.(操作)关闭工作空间 选择菜单命令“文件”|“关闭工作空间”保存并关闭工作空间。(阅读)Visual C+开发环境简介1. 什么是Visual C+集成开发环境Visual C+是Microsoft公司提供的在Windows环境下进行应用程序开发的C/C+编译器。Visual C+在提供可视化的编程方法的同时,也适用于编写直接对系统进行底层操作的程序。Visual C+ 6.0是Microsoft公司出品的基于Windows的C+开发工具,它是Microsoft Visual Studio套装软件的一个有机组成部分。Visual C+软件包包含了许多单独的组件,如编辑器、编译器、链接器、生成实用程序、调试器,以及各种各样为开发Microsoft Windows下的C/C+程序而设计的工具。通过一个由窗口、对话框、菜单、工具栏、快捷键及宏组成的和谐系统,可以观察和控制整个开发进程。2. Visual C+开发环境的窗口运行Visual C+,弹出Visual C+开发环境窗口。选择“MFC应用程序设计向导”后,得到的一个窗口:标准工具栏向导条工具栏状态栏工作空间窗口文档窗口输出窗口菜单栏图A-1 Visual Studio集成开发环境工具栏集(标准工具栏、向导条工具栏)可以通过菜单中的“工具 | 定制”定制工具栏。可以在屏幕四周移动工具栏。当鼠标停留在工具栏按钮上时,按钮凸起,状态栏显示按钮的描述,停留稍长时将弹出“工具提示”小窗口显示按钮的名字。菜单栏当鼠标停留在菜单栏上时,菜单名呈凸起状。单击菜单名拉下菜单。鼠标右键 上下文相关菜单单击鼠标右键,显示一个与当前鼠标所指向位置相关的弹出式菜单,也称上下文相关菜单。文档窗口 停靠窗口文档窗口包含有源代码文本和图形文档。窗口(Windows)菜单中列出了在屏幕上以平铺方式还是以层叠方式显示文档窗口的命令。所有其他的Visual C+窗口(包括工具栏甚至菜单栏),都是停靠窗口。停靠窗口可以固定在Visual C+用户区的顶端、底端或侧面,可以移出主窗口。在屏幕上移动一个停靠窗口时,窗口总是紧贴着Visual C+主窗口的某一边界,或任何其他它接触到的定位窗口。移动窗口时,按住Ctrl键,可禁止它的停靠特征。工作空间窗口在窗口底端选择相应的选项卡来显示项目的类、资源、数据源和文件的列表。在窗口中单击小的加号(+)或减号(-)来展开或折叠列表。图A-2 在工作空间窗口中展开类的列表工作空间窗口可显示多达4个窗格的信息:ClassView:列出项目中的类和成员函数。要在文本编辑器中打开类的源文件,双击列表中要打开的类或函数名ResourceView:列出项目的资源数据。双击列表中的数据项会打开合适的编辑器并加载资源。FileView:列出项目的源文件。把源文件复制到项目夹中,不会自动把文件添加到FileView窗格的列表中。必须用项目(Project)菜单中的Add To Project(添加到项目)命令把新文件添加到项目中。Data View:显示数据库项目的数据来源信息。该选项卡中出现在企业版的数据库项目中。输出窗口组建:显示编译器、链接器和其他工具的状态消息。调试:用于通知来自调试器的提示。默认情况下,Find In File搜索结果显示在输出窗口的Find InFile 1选项卡中,但Find In File对话框中有一个复选框,允许把结果转移到Find In File 2选项卡中。3. 使用在线帮助由WinHlp32查看器显示的标准HLP文件对话框中的弹出式帮助信息Microsoft Developer Network Library(MSDN)标准的HLP文件:对开发环境的命令和窗口部件的帮助,当Help(帮助)菜单的Use ExtensionHelp(使用扩展帮助)命令被选中,或按F1键就会显示这些帮助文件。对话框中的弹出式帮助信息:把焦点移到该控件上,并按F1键;在该控件上右击,来打开Whats This?弹出式按钮;单击对话框右上角的问号按钮,然后单击要了解的控件。MSDN:MSDN是作为一个应用程序单独运行的,没有同任何单个开发环境结合在一起。要从Visual C+中访问MSDN,Help(帮助)菜单中的Use Extension Help(使用扩展帮助)命令必须没有被选中。从Help(帮助)菜单中选择Contents(内容)、Search(搜索)或Index(索引)命令,会使环境通过执行WindowsHH.exe程序来运行MSDN,该程序从文件MSDNVS98.col中加载MSDN目录列表(包含该文件的文件夹名反映了系统的定位设置)。图A-3 MSDN的外观左边窗格选择阅读的文章。右边窗格显示找到的文章。在右窗格中,每次都出现主题,它通过超文本链接连接到其他的相关主题。超文本链接也称超级链接,它是文本中一些特殊的词和短语。链接带有下划线,并以突出的颜色显示。当光标移动到MSDN库窗口中的超文本链接上时,光标变成手的形状。在链接上单击,会从MSDN窗口中清除掉当前主题,而代之以超文本链接所指向的新主题。通过单击Hide(隐藏)工具按钮关掉左边窗格。左窗格中有4个选项:Contents(目录)、Index(索引)、Search(搜索)和Favorites(收藏)。(1) Contents(目录)选项卡MSDN的主题组依照标题和副标题的排列方式形成一个目录。开始,可搜索一个大概的主题,然后逐层打开越来越明确的信息路径,来寻找你感兴趣的主题。从Visual C+的Help(帮助)菜单中选择Contents(目录)命令,会打开MSDN窗口,并显示目录列表。展开列表,直到找到要搜索的标题,可以通过双击标题(通过书形图标来识别),或单击加号(+)按钮来完成。目录列表中的文章标题位于一连串分层的末端,每个标题通过一张折起一个角的纸形图标来区别。双击列表中的标题,会在MSDN窗口的右窗格中打开该文章。默认情况下,目录列表概括了MSDN的全部文章。可以通过把目录表的一个分支定义为一个信息子集,来缩短显示的目录。例,创建一个只属于MFC参考的文章子集。 从MSDN的View(查看)菜单中选择Define Subset(定义子集)命令。 在Define Subset对话框中,通过双击名为MSDN Library Visual Studio 6.0的标题来展开目录列表,然后,展开Visual C+ Documentation(Visual C+文档)和Referemce(参考)副标题。选择名为Microsoft Foundation Class Library and Templates(Microsoft基础类库和模板)的副标题,并单击Add(添加)按钮来创建子集。 在Define Subset对话框的底部的编辑框中键入新子集的名字,然后单击Save(保存)和Close(关闭)按钮。要在各个子集间切换,只需从名为Active Subset(有效子集)的下拉列表中选择一个子集即可。(2) Index选项卡Index选项卡显示了整套MSDN文件的全面索引。要找到一个索引条目,在对话框顶部的编辑框中键入关键字即可。(3) Search选项卡搜索引擎确定哪些主题文件包含了指定的词或短语,这个过程称为全文本搜索。全文本搜索从MSDN的Search(搜索)选项卡中启动,它允许寻找包含指定词或短语的主题。搜索引擎能理解词的派生、通配符、布尔逻辑组合及NEAR运算符。4. 创建新项目从File菜单中单击New(新建),显示新建对话框的Project(项目)选项卡,其中列出了Visual C+中的向导。图A-4 新建对话框可以使用AppWizard(应用程序向导)建立项目,然后使用其他Visual C+工具,如ClassWizard来继续开发过程。可以通过复制和修改以前的项目源文件来开始一个新项目。用Visual Studio开发应用程序时可能创建了很多的源文件、各种资源文件及其他文档。这些文件以工作空间和项目的形式进行组织。Developer Studio中一次只能打开一个工作空间,在同一个工作空间中可以包括多个项目。每一个项目是你所开发的一个应用程序。这些项目相互之间可以具有某个联系和从属关系,也可以彼此完全独立。此外,这些项目还可以是不同类型的。项目中除了包括应用程序所用到的源文件、资源文件外,还可以包括其他类型的文件,如应用程序的规格说明书、流程图、开发日程等。5. 关于应用程序向导的详细说明Visual C+的Wizard(向导),可为某种特殊类型的程序建立项目。它像其他动态链接库一样,在Developer Studio环境下运行,并且要求你提供新程序的特征,然后生成启动器源文件,其中这些新特征的大部分通用代码都已经替你写好了。Visual C+主向导:AppWizard(应用程序向导)。AppWizard用来建立使用MFC的典型的C+ Windows应用程序。AppWizard为各种各样的程序特征提供了代码,这些特征包括:单文档、多文档和对话框界面、停靠工具栏、状态栏和打印机支持。带有典型的操作命令(如Open、Save、Print、Cut、Copy和Paste)的菜单,上下文相关帮助的启动器文件,显示程序信息和MFC图标的About对话框,支持数据库以及复合文档、Automation和ActiveX控件的OLE/ActiveX支持。使用AppWizard(应用程序向导)创建一个项目的过程海南大学信息科学技术学院实 验 报 告评定成绩指导教师实验课程: C+程序设计课程课内实验 学号: 姓名: 班级: 同组成员: 完成日期: 2012 年 月 日实验二 C+简单程序设计(6学时)(第2章 C+简单程序设计)一、实验目的 1. 学会编写简单的C+程序。2. 复习基本数据类型变量和常量的应用。3. 复习运算符与表达式的应用。4. 复习结构化程序设计基本控制结构的运用。5. 复习自定义数据类型的应用。6. 练习使用简单的输入输出。7. 观察头文件的作用。8. 学会使用Visual C+ 6.0开发环境的Debug调试功能:单步执行、设置断点、观察变量值。二、实验任务1.(例2-7)输入并运行例2-7,即用do-while语句编程,求自然数110之和。程序正确运行之后,去掉源程序中#include语句,重新编译,观察会有什么问题。2. 将do-while语句用for语句代替,完成相同的功能。3. 编程计算图形的面积。程序可计算圆形、长方形、正方形的面积,运行时先提示用户选择图形的类型,然后,要求用户对圆形输入半径值,要求用户对长方形输入长和宽的值,要求用户对正方形输入边长的值,计算出面积的值后将其显示出来。4. 使用Debug调试功能观察任务3程序运行中变量值的变化的情况。5.(习题2-33)声明一个表示时间的结构体。可以精确表示年、月、日、小时、分、秒;提示用户输入年、月、日、小时、分、秒的值,然后完整地显示出来。6.(习题2-37)输出乘法九九算表。编程中要用到单重循环、二重循环、选择结构和I/O格式控制的操纵符。三、实验步骤1.(验证,例2-7)用do-while语句编程,求自然数110之和。(1) 建立一个控制台应用程序项目lab2_1;(2) 向其中添加一个C+源文件lab2_1.cpp(方法见实验一);(3) 输入例2-7的代码,检查一下确认没有输入错误;(4) 选择菜单命令“组建”|“组建lab2_1.exe”编译源程序;(5) 再选择“组建”|“执行lab2_1.exe”运行程序;(6) 观察输出是否与书上的答案一致。2.(验证,例2-7)去掉#include行及using行,观察会有什么问题。程序正确运行之后,在源程序行“#include ”及下一行前面加注释标记“/”,使之成为注释行,重新编译,此时,编译器会输出类似于下面内容的提示:-Configuration: lab2 - Win32 Debug-Compiling.lab2_1.cppf:lab2_1lab2_1.cpp(10) : error C2065: cout : undeclared identifierf:lab2_1lab2_1.cpp(10) : error C2297: : illegal, right operand has type char 5f:lab2_1lab2_1.cpp(10) : error C2065: endl : undeclared identifier执行 cl.exe 时出错.lab2_1.obj - 1 error(s), 0 warning(s)C+语言没有输入输出语句,只是C+编译系统带有一个面向对象的I/O软件包,即I/O流类库。cout和cin是该类库预定义的流对象,#include 提示编译器在对程序预处理时,将头文件iostream中的代码嵌入到该程序中该指令所在的地方。头文件iostream中声明了程序所需要的输入和输出操作的有关信息,在C+程序中若使用了系统中提供的一些功能,就必须嵌入相关的头文件,否则,系统无法找到实现这些功能的代码。现在,删除注释标记,将程序恢复正确。3.(编程,例2-7)用for语句编程,求自然数110之和。建立一个项目lab2_2, 包含一个C+源程序lab2_2.cpp,将do-while语句用for语句代替,完成与实验任务1相同的功能。参考内容:for语句,例2-84.(验证)计算图形的面积。建立项目lab2_3,包含一个C+源程序lab2_3.cpp(见步骤5),计算图形的面积。计算公式:圆形面积S=PI*r*r,长方形面积S=a*b,正方形面积S=a*a。程序中声明整型变量iType表示图形的类型,用cout语句输出提示信息让用户选择图形的类型,用cin读入iType的值,然后,使用switch语句判断图形的类型,分别提示用户输入需要的参数值,用cout语句显示计算结果。编译运行程序。参考内容:switch,例2-45.(操作)学习简单的Debug调试功能。参考程序如下:/lab2_3.cpp#include using namespace std;const float PI=3.1416;void main()int iType;float radius,a,b,area;coutiType;switch(iType)case 1:coutradius;area=PI*radius*radius;cout面积为: areaendl;break;case 2:couta;coutb;area=a*b;cout面积为: areaendl;break;case 3:couta;area=a*a;cout面积为: areaendl;break;default:cout不是合法的输入值!2;fib(1)=fib(2)=1;使用if语句判断函数的出口,在程序中用cout语句输出提示信息。程序名:lab3_4.cpp。5.(要求)用Debug调试的程序文件lab3_4.cpp。使用Debug中的Step Into追踪到函数内部,观察函数的调用过程,参考程序如下:/lab3_4.cpp#include using namespace std;int fib(int n);int main()int n,answer;coutn;coutn;answer=fib(n);coutanswer 是第 n 个 Fibonacci 数。n;return 0;int fib(int n)cout计算 fib(n).;if(n3)cout返回 1!n;return (1);elsecout调用 fib(n-2) 和 fib(n-1);n;return (fib(n-2)+fib(n-1);6.(操作)Debug的调试步骤。调试操作步骤如下: 选择菜单命令“组建 | 开始调试 | Step Into”或按下快捷键F11,系统进入单步执行状态,程序开始运行,并出现一个DOS窗口,此时Visual Studio中光标停在main()函数的入口处。 把光标移到语句“answer=fib(n);”前,单击Run to Cursor,在程序运行的DOS窗口中按提示输入数字5,光标返回,停在语句“answer=fib(n);”前,观察一下n的值(观察方法见实验二)。 单击Step Into,程序进入fib函数,观察一下n的值。 把光标移到语句“return (fib(n-2)+fib(n-1);”前,单击Run to Cursor。 再单击Step Into,程序递归调用fib函数,再进入fib函数,观察一下n的值。 继续执行程序,参照上述的方法,观察程序的执行顺序,加深对函数调用和递归调用的理解。把光标移到语句“return (fib(n-2)+fib(n-1);”前,单击Run to Cursor。再单击Step Into。 把光标移到语句“return (1)”前,单击Run to Cursor。再单击Step Into。 把光标移到main()中的“”前,单击Run to Cursor。得到运行结果。 把光标移到main()中的“”后,单击Run to Cursor。运行结束。 再试试Debug菜单栏中别的菜单项,熟悉Debug的各种方法。四、实验结果1. 实验步骤1的程序lab3_1.cpp及运行结果。2. 实验步骤2的程序lab3_2.cpp及运行结果。3. 实验步骤3的程序lab3_3.cpp及运行结果。4. 实验步骤4的程序lab3_4.cpp的运行结果(输入5)。海南大学信息科学技术学院实 验 报 告评定成绩指导教师实验课程: C+程序设计课程课内实验 学号: 姓名: 班级: 同组成员: 完成日期: 2012 年 月 日实验四 类与对象(6学时)(第4章 类与对象)一、实验目的 1. 掌握类的声明和使用。2. 掌握类的声明和对象的声明。3. 复习具有不同访问属性的成员的访问方式。4. 观察构造函数和析构函数的执行过程。5. 学习类的组合使用方法。6. 使用Visual C+的Debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。二、实验任务1. 声明一个CPU类。包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。其中,rank为枚举类型CPU_Rank,声明为enum CPU_Rank P1=1, P2, P3, P4, P5, P6, P7 ; frequency为单位是MHz的整型数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。2. 声明一个简单的Computer类。有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等,有两个公有成员函数run和stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,声明并实现这个类。3.(习题4-10)设计一个用于人事管理的People(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:number(编号),sex(性别)、birthday(出生日期)、id(身份证号)等。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现人员信息的录入和显示。要求包括:构造函数和析构函数、内联成员函数、组合。三、实验步骤1.(验证)声明一个CPU类,观察构造函数和析构函数的调用顺序。首先声明枚举类型CPU_Rank,例如enum CPU_Rank P1=1, P2, P3, P4, P5, P6, P7 ,再声明CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等私有数据成员,声明成员函数run和stop,用来输出提示信息,在构造函数和析构函数中也可以输出提示顺序,以及成员函数的调用。程序名:lab4_1.cpp。2.(要求)用Debug调试的程序文件lab4_1.cpp。使用Debug调试功能观察程序lab4_1.cpp的运行流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。参考程序如下:/lab4_1.cpp#include using namespace std;enum CPU_RankP1=1,P2,P3,P4,P5,P6,P7;class CPUprivate:CPU_Rank rank;/数据成员,类中的变量int frequency;float voltage;public:CPU(CPU_Rank r,int f,float v)/构造函数,对变量初始化rank=r;frequency=f;voltage=v;cout构造了一个CPU!endl;CPU() cout析构了一个CPU!endl; /析构函数,清除变量,系统的要求CPU_Rank GetRank()const return rank; /取值成员函数,取变量的值int GetFrequency()const return frequency; /const声明为常成员函数,禁止改变对float GetVoltage() const return voltage; /象的数据成员的值void SetRank(CPU_Rank r) rank=r; /赋值成员函数,改变变量的值void SetFrequency(int f) frequency=f; void SetVoltage(float v) voltage=v; void run() coutCPU开始运行!endl; /其他成员函数,根据情况给出void stop() coutCPU停止运行!endl; ;void main()CPU a(P6,300,2.8);a.run();a.stop();3.(操作)调试操作步骤如下: 单击“组建 | 开始调试 | Step Into”命令,系统进行单步执行状态,程序开始运行,一个DOS窗口出现,此时Visual Studio中光标停在main()函数的入口处。 单击Step Over,此时,光标下移,程序准备执行CPU对象的初始化。 单击Step Into,程序准备执行CPU类的构造函数。 连续单击Step Over,观察构造函数的执行情况,直到执行完构造函数,程序回到主函数,光标停在“a.run();”行前。 此时程序准备执行CPU对象的run()方法,单击Step Into,程序进入run()成员函数,连续单击Step Over,直到光标停在“a.stop();”行前。 继续执行程序,参照上述的方法,观察程序的执行顺序,加深对类的构造函数、析构函数、成员函数的执行顺序的认识。 单击Step Into,进入CPU()析构函数,连续单击Step Over,直到光标又停在main()函数的“”行前。 单击Step Over。 单击“取消”,再单击Step Out,运行结束。程序的执行顺序:对象a的构造函数CPU()成员函数a.run()成员函数a.stop()对象a的析构函数CPU() 再试试Debug菜单栏中别的菜单项,熟悉Debug的各种方法。4.(编程)声明CPU类、RAM类以及CDROM类。再声明Computer类,观察类对象及其成员变量的构造与析构顺序,以及成员函数的调用。首先声明CPU类(可使用(1)中声明的CPU类)、RAM类以及CDROM类。再声明Computer类,声明私有数据成员cpu、ram、cdrom,声明公有成员函数run、stop,可在其中输出提示信息。在主程序中声明一个Computer的对象,调用其成员函数,观察类对象及其成员变量的构造与析构顺序,以及成员函数的调用。程序名:lab4_2.cpp。提示:RAM类中有一个数据成员(int ramtype;);CDROM类中有一个数据成员(int cdromtype;);为了观察程序执行的顺序,类似程序lab4_1.cpp,在构造函数、析构函数、run和stop函数中应包含一条输出语句,给出相关的信息;每个类中至少包括:数据成员、构造函数、析构函数、取值成员函数、赋值成员函数。参考内容:例4.14.45.(操作)用Debug调试程序lab4_2.cpp。使用Debug调试功能观察lab4_2.cpp程序的运行流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序,特别注意观察成员变量的构造与析构顺序。6.(编程,习题4-10)设计一个用于人事管理的People(人员)类。类People的属性:number(编号),sex(性别)、birthday(出生日期)、id(身份证号)等。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现人员信息的录入和显示。要求包括:构造函数和析构函数、内联成员函数、组合。程序名:lab4_3.cpp。提示:构造函数和析构函数的函数体可以定义为空;两个类中对年、月和日分别定义取值和赋值成员函数;People类中的数据成员为:unsigned number;/编号,4位数字,第一位为1char sex;/性别,m为男,w为女Date birthday;/出生日期unsigned id;/身份证号,8位数字,第一位不为0参考程序运行结果:参考内容:例4.7四、实验结果1. 实验步骤1的程序lab4_1.cpp的运行结果。2. 实验步骤4的程序lab4_2.cpp及运行结果。3. 实验步骤6的程序lab4_3.cpp及运行结果。海南大学信息科学技术学院实 验 报 告评定成绩指导教师实验课程: C+程序设计课程课内实验 学号: 姓名: 班级: 同组成员: 完成日期: 2012 年 月 日实验五 C+程序的结构(2学时)(第5章 C+程序的结构)一、实验目的 1. 观察程序运行中变量的作用域、生存期和可见性。2. 学习类的静态成员的使用。3. 学习多文件结构在C+程序中的使用。二、实验任务1. 运行面的程序,观察变量x、y的值。/lab5_1.cpp#include using namespace std;void fn1();int x=1,y=2;int main()cout开始.endl;coutx=xendl;couty=yendl;cout在main()中求x和y的值.endl;int x=10,y=20;coutx=xendl;couty=yendl; cout进入函数fn1().endl;fn1();cout返回main()endl;coutx=xendl;couty=yendl; return 0;void fn1()int y=200;coutx=xendl;couty=yendl;2. 实现客户机(CLIENT)类。声明字符型静态数据成员ServerName,保存其服务器名称;声明整型静态数据成员ClientNum,记录已定义的客户数量;定义静态函数ChangeServerName()改变服务器名称。在头文件client.h中声明类,在文件client.cpp中实现,在文件lab5_2.cpp中测试这个类,观察相应的成员变量取值的变化情况。三、实验步骤1.(验证)运行lab5_1.cpp程序,观察程序输出。全局变量的作用域为文件作用域,在整个程序运行期间有效,但如果在局部模块中声明了同名的变量,则在局部模块中,可见的是局部变量,此时,全局变量不可见;而局部变量的生存期只限于相应的程序模块中,离开相应的程序模块,局部变量x、y就不再存在,此时同名的全局变量重新可见。程序名:lab5_1.cpp。2.(编程)实现客户机(CLIENT)类。新建一个空的项目lab5_2,添加头文件cli
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年犬类行为学面试题
- 2025年放射医学面试模拟题及解析
- 2025年安全管理基础测试题及答案
- 2025年客运站安全员工作手册题解
- 2025年宠物芳香疗愈师初级面试模拟题及答案集锦
- 2025年烹饪大厨专业资格考试试题及答案解析
- 2025年旅游规划与管理实务应用考核试题及答案解析
- 2025年健身教练资格考试试题及答案解析
- 2025年建筑安全检测师资格考试试题及答案解析
- 2025年柜台理财师专业技能水平评定试题及答案解析
- 酒吧承包经营合同(标准版)
- 新概念第二册单词表(完整版)
- WJ30059-2023军用爆炸品设计安全技术规程
- GB/T 3277-1991花纹钢板
- GA/T 486-2015城市道路单向交通组织原则
- 低空无人机遥感技术及应用课件
- 腹横肌平面阻滞课件
- UASB厌氧塔设计计算书
- 2009-2022历年江苏省镇江市丹阳市事业单位考试《综合知识和能力素质(会计审计类岗位)》真题含答案2022-2023上岸必备带详解版3
- 项目工作计划进度表Excel模板(推荐)
- 脓毒症的诊断和治疗进展ppt课件
评论
0/150
提交评论