您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 《面向对象程序设计》实验指导书
课程代码:04420280适用专业:计算机科学与技术、网络工程、数字媒体技术制定人:汪海鹰计算机学院2015年9月《面向对象程序设计》实验指导书《面向对象程序设计》实验指导书-1-目录前言................................................................................................................................................2实验一C++基础...............................................................................................................................4实验二C++对C的扩充...................................................................................................................8实验三C++输入输出流操作...........................................................................................................9实验四类与对象初步...................................................................................................................11实验五类与对象的使用...............................................................................................................13实验六运算符重载.......................................................................................................................15实验七继承与派生.......................................................................................................................16实验八多态性与虚函数...............................................................................................................21实验九课程期末综合设计...........................................................................................................22《面向对象程序设计》实验指导书-2-前言一、说明本实验指导书根据《面向对象程序设计》教学大纲和实验大纲编写。二、实验目的面向对象程序设计(ObjectOrientedProgramming,OOP)方法是当前主流的程序设计方法,具有抽象性、封装性、继承性和多态性的特点。本实验课程的目标是通过实验,使学生能够熟练使用VisualC++6.0和VS2010开发平台,掌握面向对象的程序设计语言C++中的类、对象、继承、封装、多态等概念及使用方法,掌握虚函数、异常、I/O流处理等编程技巧,养成严谨的程序设计风格和习惯。三、实验安排《面向对象程序设计》实验课程共有8个实验和1个期末课程设计,分配学时如下所示,共28个课时。具体安排如下表所示:序号实验项目名称学时实验类别分组人数实验室名称主要实验设备1C++基础2演示1软件工程实验室计算机2C++对C的扩充2验证1软件工程实验室计算机3C++输入输出流操作2验证1软件工程实验室计算机4类与对象初步4验证1软件工程实验室计算机5类与对象的使用6设计1软件工程实验室计算机6运算符重载2验证1软件工程实验室计算机7继承与派生4设计1软件工程实验室计算机8多态性与虚函数2验证1软件工程实验室计算机9期末综合实验设计4综合3软件工程实验室计算机实验2、4、5、6、7、8需要撰写实验报告,实验1、3课堂检查,实验9提交设计文档、源代码并以小组形式答辩。《面向对象程序设计》实验指导书-3-四、实验考核实验的考核形式以实验报告和期末课程设计为主,结合实验课程提问及考勤。具体成绩评定原则为:单个实验成绩记分制为等级制,在计算总成绩时转换为百分制。实验总成绩由6个课程实验的平均成绩及1个学期期末综合设计成绩组成,课程实验占80%,期末综合设计占20%。实验成绩等级转换百分制的对照表如下表所示:实验成绩转换对照表评分等级百分制A+100A95A-90B+88B85B-80C+78C75C-70D+68D65D-60《面向对象程序设计》实验指导书-4-实验一C++基础-C++程序的运行环境和运行C++程序的方法一、实验目的⑴熟悉和理解C++语言中的数据类型、运算、表达式;⑵初步了解C++源程序的结构和特点;⑶能够掌握在一种以上的编译环境中调试和运行简单的C++程序。二、实验内容和要求阅读下列代码,写出结果,并编写C++程序验证;⑴混合运算inta=1,b=3,i;①i=--a||++b,a+b;则a的值为,b的值为,i的值为。②i=a--||(++b,a+b);则a的值为,b的值为,i的值为。③i=--a||(++b,a+b);则a的值为,b的值为,i的值为。④i=((--a||++b),a+b);则a的值为,b的值为,i的值为。⑵整形、字符型间的相互赋值charc;shorta;unsignedshortu_a;c=128;a=c;u_a=c;则c的值为,a的值为,u_a的值为。c=0501;a=c;u_a=c;则c的值为,a的值为,u_a的值为。⑶浮点型数据的赋值及精度inti;shortj;chark;longl;floatm;doublen;n=50000.222233334445;i=n;j=n;k=n;l=n;m=n;则i的值为,j的值为,k的值为,l的值为,m的值为,n的值为。三、操作步骤(以VC6.0++编译环境为例)⑴.新建一个win32ConsoleApplication的工程:打开VC++开发软件,从[文件]菜单中点击[新建]菜单项,出现如图1-1所示对话框,在右上角的工程下输入该工程的名称hello,并设置该工程所保存的路径,最后点击确定。《面向对象程序设计》实验指导书-5-图1-1⑵.当确定后会出现选择工程类型的对话框,如图1-2所示:请选择一个空的工程,即第一个选项。图1-2⑶.单击确定后,工程建立完毕,接下来建立程序源文件,请再单击[文件]菜单下的[新建]出现原先出现的对话框,请选择“文件”选项卡中的c++sourcefile选项,并取名hello,如图1-3。图1-3⑷确定后,就进入了源代码的编辑窗口,如图1-4所示:《面向对象程序设计》实验指导书-6-图1-4⑸.编辑好开始设置的源代码:进入了编译和调试阶段,请按如图1-5所示的第二个按钮,这个称作为构件,它的功能是先进行编译,同时如果编译成功的话自动建立EXE可执行文件,同时将可执行文件和编译和连接过程中的中间代码一起放置在debug文件夹中。图1-5⑹.执行可执行文件,单击编译条上的第四个按钮,即惊叹号,如图1-5所示,对编译成功的程序进行执行。(以VS2010编译环境为例)⑴.VS2010不能单独编译一个.cpp或者一个.c文件,这些文件必须依赖于某一个项目,因此必须首先创建一个项目。有多种方法都可以创建项目,可以通过菜单:文件,新建,项目;也可以通过工具栏点击新建项目进行创建。点击起始页面上面的新建项目,点击之后进入新建项目向导,上面选择Win32控制台应用程序,名称中输入HelloWorld点确定,接下来进入创建页面,在Win32应用程序向导的第一个页面直接点下一步即可,如下图1-6.图1-6⑵.右键单击项目名称,选择添加,新建项,在向导中选择代码:C++文件(.cpp),如下图1-7所示。图1-7《面向对象程序设计》实验指导书-7-⑶.单击添加后,可在如下图1-8中进行代码的撰写工作。图1-8⑷.代码编写完毕,可使用图中的进行编译,或者快捷键Ctrl+F5。结果如图1-9所示:图1-9四、实验分析代码分析:⑴混合运算:逗号运算符优先级最低;逻辑运算符是双目运算符,后部分不一定会执行;⑵整形、字符型间的相互赋值:按存储单元中的存储形式直接传送;若多字节复制到少字节,则低位复制,多出的高位舍弃;若少字节复制到多字节,则低位复制,高位根据少字节的最高位一致进行扩展;⑶浮点型数据的赋值及精度:常实数的存储形式为该编译系统支持的最高精度(一般为双精度);浮点型数据的输入和输出有精度和广度的限制,总体来说误差是必然的,准确是偶然的;浮点型数据赋值给整形或字符型数据,首先去掉小数部分,然后按照该整数在存储单元中的存储形式直接传送。五、实验补充要求本实验为演示性,不需要撰写实验报告,学生按照3-4人分组,每组成员之间相互检查,教师抽查。《面向对象程序设计》实验指导书-8-实验二C++对C的扩充一、实验目的⑴了解在面向过程程序设计中C++对C功能的扩充与增强;⑵进一步熟练在不同系统和编译环境下编辑、编译和运行C++程序的方法;⑶进一步熟悉C++程序的结构和编程方法。二、实验内容与要求本实验由4个小程序组成,要求如下:⑴编写一个程序,用来实现2个或3个正整数中的最大数。①用不带默认参数的函数实现;②用带默认参数的函数实现。对比两种方法,分析带默认参数的函数优点和应用场合,并分析本题中默认参数的取值应该在什么范围。⑵编写一个程序,输入两个整数,将它们由大到小的顺序输出。①使用指针方法;②使用变量引用方法。对比两种方法,分析这两种方法的特点和使用技巧。⑶有5个字符串,要求对它们由小到大的顺序排列,用string方法。⑷编写一个程序,用同一个函数名对n个数据从小到大排序,数据类型可以是整形、单精度型和双精度型。对比以下两种方法,分析这两种方法的特点和使用技巧。①用重载函数实现;②用函数模板实现。三.实验步骤(实验操作类似实验一的操作步骤)四、实验分析⑴有默认值的形参必须放在形参表的右边,不允许无默认参数值和有默认参数值的形参交错排列。⑵用指针变量做形参,可将实参变量的地址传递给形参,在函数内用“*指针变量”的方式访问实参变量。而引用变量是变量的别名,在调用函数时,用引用变量做的形参就成了实参变量的别名,在函数中用的形参名就是实参的别名,这样比用指针变量更直观、更方便。⑶C++提供了字符串类类型string,实际上它不是C++的基本类型,它是在C++标准库中声明的一个字符串类,程序可以用它定义对象,但是需要在程序开始用包含语句把C++标准库的string头文件包含进来。⑷用函数模板比用函数重载更方便,但是函数模板只适用于函数参数的个数相同而类型不同,并且函数体相同的情况,如果函数的参数个数不同,则不能用函数模板。五、实验补充要求本实验为验证性,需要撰写实验报告,实验报告书写格式及要求见附件:《实验报告模板.doc》文档。学生按照3-4人分组,每组成员之间相互检查,教师抽查。《面向对象程序设计》实验指导书-9-实验三C++输入输出流操作一、实验目的⑴掌握C++的3种输入输出方法:标准I/O,文件I/O和串I/O;⑵熟练使用多种输入方法;⑶熟练使用C++的格式输出二、实验内容与要求本实验由3个小程序组成,要求如下:⑴ASCII文件流的写操
本文标题:《面向对象程序设计》实验指导书
链接地址:https://www.777doc.com/doc-2805615 .html