您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 《C++面向对象程序设计》实验指导书(程细柱)
《C++面向对象程序设计》实验指导书主讲:程细柱韶关学院计算机科学技术学院2010-3-1目录实验一VisualC++开发环境及C++程序的上机过程........................3实验二选择和循环结构程序设计........................................................8实验三类的定义和使用......................................................................11实验四类的继承和派生......................................................................13实验五多态性程序设计......................................................................14实验六运算符重载和类模板..............................................................14实验七文件操作..................................................................................13实验八利用AppWizard向导生成Windows应用程序....................19实验九消息处理..................................................................................23实验十文档/视图结构.........................................................................27实验十一对话框设计..........................................................................29实验一VisualC++开发环境及C++程序的上机过程一、实验目的1、了解和使用VC集成开发环境;2、熟悉VC环境的基本命令和功能键;3、熟悉常用的功能菜单命令;4、学习使用VC++环境的帮助;5、学习完整的C++程序开发过程;6、理解简单的C++程序结构二、实验内容使用VisualC++6.0集成环境来编辑、编译并运行下面简单C++程序:1.#includeiostream.hvoidmain(){coutThisisaC++program.\n;}2.#includeiostream.hintmax(int,int);//声明自定义函数voidmain()//主函数{inta,b,c;coutinputtwonumber:\n;cinab;c=max(a,b);//调用max函数,将得到的值赋给Ccoutmax=cendl;}intmax(intx,inty)//定义max函数,函数值为整型,形式参数x,y为整型{intz;//max函数中的声明部分,定义本函数中用到的变量z为整型if(xy)z=x;elsez=y;return(z);//将z的值返回,通过max带回调用处}三、实验步骤VisualC++6.0启动后的用户界面选择菜单“开始/程序/MicrosoftVisualStudio6.0/MicrosoftVisualC++6.0”,得到VisualC++6.0启动后的用户界面,如图1-1所示。图1-1VisualC++6.0用户界面1、创建新工程(1)单击菜单“文件/新建”,显示“新建”对话框,如图1-2所示。(2)在此对话框的列表栏中,选择“Win32ConsoleApplication”(Win32控制台应用程序”)。在“工程”栏中输入一个工程名,如“实验一”,在位置文本框中选择工程所在的路径,如图中所示H:\C++实验\实验一,单击“确定”按钮。图1-2“新建”对话框(3)在“Win32ConsolApplication-Step1of1”对话框中选择Anemptyproject单选项。然后单击“Finish”按钮,如图1-3所示。图1-3“Win32ConsolApplication-Step1of1”对话框(4)在“新建工程信息”对话框中单击“确认”按钮,完成工程创建过程。2、创建C++源程序文件(1)编辑C++源程序:编辑C++源程序时,选择“文件”菜单项,出现一个下拉式菜单,再选择该菜单中的“新建”选项(热键为Ctrl+N),打开“新建”窗口,如图1-4所示:图1-4“新建”窗口(2)选择“文件”,在它的下拉列表框中选择“C++SourceFile”,如图1-4所示,再按击“确定”,出现编辑屏幕,如图1-5所示:图1-5“C++”源程序编辑(3)在“C++源程序编辑”窗口下编辑C++源程序。在编辑窗口键入C++源程序。如图1-6所示,键入如下源程序:图1-6编辑C++源程序3.编译连接和运行源程序(1)选择菜单项“编译”,出现“编译”的下拉菜单,在该下拉式菜单中选择“编译eg1-1.cpp”菜单项,这时系统开始对当前的源程序进行编译,在编译过程中,将所发现的错误显示在屏幕下方的“编译”窗口中。所显示的错误信息中指出该错误所在行号和该错误的性质。用户可根据这些错误信息进行修改。上述程序的“编译”窗口,如图1-7所示:图1-7“编辑”窗口(2)编译无错误后,可进行连接生成可执行文件(.exe),这时选择“编译”下拉菜单中的“构件eg1-1.exe”选项。“编译”窗口出现如图1-8所示的信息说明编译连接成功,并生成以源文件名为名字的可执行文件(eg1-1.exe)。图1-8编译连接信息(3)执行可执行文件的方法是选择“编译”菜单项中“执行eg1-1.exe”选项。这时,运行该可执行文件,并将结果显示在另外一个显示执行文件输出结果的窗口中,如图1-9所示:图1-9运行C++程序结果4.关闭打开工作区、打开工作区单击菜单“文件/关闭工作区”,关闭工作区。单击菜单“文件/打开工作区”,在强出的对话框中选定“H:\C++实验\实验一\实验一.dsw”,单击“打开”按钮,则可打开工作区,对已建立的工程文件进行修改。5.根据实验步骤1-4,建立、编译并运行实验程序2。四、实验要求1.复习教材有关内容。2.掌握C++控制台程序的开发、调试步骤。3.完成实验报告。实验二选择和循环结构程序设计一、实验目的1.熟练if和switch选择结构、while和for循环结构及实现循环的方法。2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。二、知识要点C++语句可以分为以下5类:(1)表达式语句:由一个表达式构成一个语句,最典型的是,由赋值表达式构成一个赋值语句。例:a=5;(2)声明语句:一个名字在使用之前必须先声明,以便建立名字与程序实体之间的映射关系。按声明的程序实体结构对象声明语句可以分为:声明变量;声明函数;声明对象。按产生不产生程序实体,声明语句可分为定义性与引用性两种。(3)空语句:只有一个分号的语句称为空语句。主要用于语法上要求有一条语句但实际没有任何操作可执行的场合。(4)块语句:也称为复合语句或分程序,是括在一对花括号之间的语句序列。在语法上它相当于一条语句,只是在花括号外不再写分号。块语句主要在两种情形下使用:语法要求一条语句,但又难以只用一条简单语句表达的情形;形成局部化的封装体。(5)流程控制语句①条件语句:if()~else~②循环语句:for()~③循环语句:while()~④循环语句:do~while()⑤结束本次循环语句:continue⑥终止执行switch或循环语句:break⑦多分支选择语句:switch(){case1;case2…;default;}⑧从函数返回语句:return三、实验内容及步骤1.输入并运行下列程序并分析其功能。main(){intt,a,b,c,d;cout“请输入四个数:”;cinabcd;cout“\n排序结果如下:”;if(ab){t=a;a=b;b=t;}if(ac){t=a;a=c;c=t;}if(ad){t=a;a=d;d=t;}if(bc){t=b;b=c;c=t;}if(bd){t=b;b=d;d=t;}if(cd){t=c;c=d;d=t;}coutabcd;}2.设计程序找出1~100间的质数,显示出来。用for或while或do-while循环语句实现。3.下面程序统计字符数组c中0、1、2及其他字符出现的次数,分别存放在变量i0、i1、i2中,统计结束后输出它们的值。要求:分析出现结果的原因,如何修改使结果正确。#includestdio.h#includeconio.hvoidmain(){charc[]=”0123456789001112222”inti0=0,i1=0,i2=0,i3=0;for(inti=0;i19;i++)switch(c[i]){case’0’:i0++;case’1’:i1++;case’2’:i2++;default:i3++;}cout”i0=”i0endl;cout”i1=”i1endl;cout”i2=”i2endl;cout”i3=”i3endl;getch();}实验三类的定义和使用一、实验目的1、理解面向对象程序设计方法的基本原理及主要特点——抽象、封装、继承和多态。2、理解类和对象的概念以及如何利用类来解决具体问题。二、实验内容1、掌握面向对象的程序设计思想2、掌握类的定义。3、掌握对象的声明和引用。4、掌握具有不同访问属性的成员的访问方式5、观察构造函数和析构函数的执行过程。三、实验步骤构造函数和析构函数的执行#includeiostream.hclassscore{public:score(intx,inty){sc1=x;sc2=y;coutconstructingscore:xyendl;}~score(){coutdestructingscore:sc1sc2endl;}protected:intsc1;intsc2;};classstudent{public:student(intid):score(88,99){noid=id;coutconstructingastudent,id:noid;}~student(){coutdestructingastudent:noidendl;}private:intnoid;};voidmain(){students1(333);coutbackinmainendl;}编译、连接并运行程序四、实验要求1、写出程序,并调试程序,要给出测试数据和实验结果。2、整理上机步骤,总结经验和体会。3、完成实验报告和上交程序。实验四类的继承和派生一、实验目的1、理解继承的含义,掌握派生类的定义方法和实现;2、理解公有继承下基类成员对派生类成员和派生类对象的可见性,能正确地访问继承层次中的各种类成员;3、理解保护成员在继承中的作用,能够在适当的时候选择使用保护成员以便派生类成员可以访问基类的部分非公开的成员;4、理解虚函数在类的继承层次中的作用,虚函数的引入对程序运行时的影响,能够对使用虚函数的简单程序写出程序结果。二、实验内容1.掌握继承和派生的概念,派生类的定义方法。2.熟悉继承的不同方式对基类成员的访问控制3.掌握多重继承的概念、定义方法、多重继承派生类构造函数的执行顺序。先执行所有基类的构造函数(顺序按照定义派生类时指定的各基关顺序)再执行对象成员所在类的构造函数(顺序按照它们在类中的声明顺序)最后执行派生类构造函数体中的内容。三、实验步骤1、
本文标题:《C++面向对象程序设计》实验指导书(程细柱)
链接地址:https://www.777doc.com/doc-5398145 .html