2021年信息计算科学面向对象程序设计实验指导书_第1页
2021年信息计算科学面向对象程序设计实验指导书_第2页
2021年信息计算科学面向对象程序设计实验指导书_第3页
2021年信息计算科学面向对象程序设计实验指导书_第4页
2021年信息计算科学面向对象程序设计实验指导书_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《面向对象程序设计》

实验指导书

合用专业:信息与计算科学

邵阳学院理学系

前B

《面向对象程序设计》是信息与计算科学专业本科生一门专业选

修课。面向对象软件开发办法是吸取了软件工程领域有益概念和有效

办法而发展起来一种软件开发办法。它集抽象性、封装性、继承性和

多态性于一体,可以协助人们开发出模块化、数据抽象限度高,体现

信息隐蔽、可复用、易修改、易扩充等特性程序。面向对象技术已广

泛应用于计算机其她有关领域,如面向对象网络合同、面向对象建模

技术、面向对象数据库、面向对象系统分析与设计,以及软件构架技

术和基于组件对象模型分布式多层设计技术。它学习对信息与计算科

学专业学生进一步学习起到了非常重要作用。

通过本课程学习规定学生理解构造化程序设计基本思想及办法,

加深c语言理解,理解面向对象程序设计基本思想及基本概念,掌握

C++语言基本,理解类、对象、封装、继承、派生、多态、重载、异

常解决、模板等概念,初步掌握UML与面向对象分析与设计,理解原

则模板库STL用法,理解Windows编程思想,熟悉VC++编程环境,理

解MFC编程办法,结合实例使学生理解系统开发过程和办法。

通过本课程学习,应纯熟掌握面向对象C++编程技术,建立对象模

型,并熟悉C++面向对象各种特性,初步掌握可视化面向对象编程技术

为了使学生更好地理解和深刻地把握以上知识,并在此基本上,训

练和培养纯熟掌握面向对象C++编程技术,建立对象模型,并熟悉C++

面向对象各种特性,初步掌握可视化面向对象编程技术技能,设立了

"VisualC++环境及程序设计基本练习”、“类、对象、继承、办法重

载及多态性练习”、“Windows编程基本练习”、“MFC编程练习”、“数据

库编程练习”5个实验,其中“数据库编程练习”为设计性实验。

各项实验重要理解、掌握详细知识,训练及培养技能见下面各实验

目。

本指引书各实验从C++编程基本、类、对象、继承、重载、Windows

编程、MFC编程、数据库编程等面向对象编程体系各个方面对学生进行

了训练,培养其实际动手能力。

本指引书只合用于信息与计算科学专业。

实验1:基本输入输出语句

实验学时:2

实验类型:验证

实验规定:必修

一、实验目

通过本实验学习,使学生理解VisualC++编程环境,掌握C++程序基本知识,训

练运用VisualC++编程环境基本技能,为此后继续学习面向对象程序设计奠定基本。

二、实验内容

1.上机实现第二章课后习题

三、实验原理、办法和手段

根据第一第二章所学C++数据类型、输入输出、程序基本构造与控制语句、

函数、数组、指针、引用等知识,依照各题规定设计程序,并上机编程、调试,

最后实现各题功能。

四、实验组织运营规定

由于该实验对学生合伙配合没有什么规定,因而每人一台机器,分别实现各

程序编程和调试。

五、实验条件

具备与学生数相似数目计算机机房。

六、实验环节

1.实验前,复习所学第一、二章内容,并在纸上设计编写好程序;

2.实验时,上机输入编写好程序、编译、调试、实现程序功能;

3.实验后,认真总结实验中浮现各种出错、意外状况及调试过程,形成编程、

调试经验,并认真填写好实验报告。

八、实验报告

按照实验报告规定完整填写各项内容,仔细记录实验成果,认真总结并写好

实验总结。

九、其他阐明

1.本次实验各题只是完毕一种简朴程序,也没有学到有关知识,因此同窗们

只能创立“C++SourceFile”文献。

2.每做完一题,先关闭工作空间,然后再重新创立新下一题文献。

实验2:顺序、分支和循环构造程序设计

实验学时:2

实验类型:验证

实验规定:必修

一、实验目

1.通过本实验,加深对顺序、分支和循环控制构造关于概念理解。

2.纯熟掌握while和for循环控制语句特点,掌握循环

构造程序设计和调试办法。

3.掌握二重循环构造程序设计办法。

二、实验内容

1.用for循环实现第二章课后习题9,12。

2.编写并调试程序,使用for循环控制语句实现上面问

题。

3.阶乘累加问题。编写程序,求1+2!+3!+…+n!值。

三、实验原理、办法和手段

根据第一第二章所学C++数据类型、输入输出、程序基本构造与控制语句、

函数、数组、指针、引用等知识,依照各题规定设计程序,并上机编程、调试,

最后实现各题功能。

四、实验组织运营规定

由于该实验对学生合伙配合没有什么规定,因而每人一台机器,分别实现各

程序编程和调试。

五、实验条件

具备与学生数相似数目计算机机房。

六、实验环节

1.实验前,复习所学第一、二章内容,并在纸上设计编写好程序;

2.实验时,上机输入编写好程序、编译、调试、实现程序功能;

3.实验后,认真总结实验中浮现各种出错、意外状况及调试过程,形成编程、

调试经验,并认真填写好实验报告。

八、实验报告

按照实验报告规定完整填写各项内容,仔细记录实验成果,认真总结并写好

实验总结。

九、其他阐明

1.本次实验各题只是完毕一种简朴程序,也没有学到有关知识,因此同窗们

只能创立“C++SourceFile”文献。

2.每做完一题,先关闭工作空间,然后再重新创立新下一题文献。

4.

实验3:密钥加密

实验学时:2

实验类型:设计

实验规定:必修

一、实验目

掌握一维数组定义与使用。

掌握函数定义、函数调用和函数阐明办法。

掌握函数递归调用概念和用法。

理解C++程序构造和特点。

熟悉C++程序基本输入和输出操作。

掌握C++数据类型、常量和变量以及修饰符用法。

掌握C++各种流程控制语句使用。

二、实验内容

将输入一行字符以加密形式输出,然后将其解密,解密字符序列与输入正文

进行比较,吻合时输出解密正文,否则输出解密失败。

加密时,将每个字符ASCII码依次重复加上4962873中数字,解密与加密顺

序相反。

三、实验原理、办法和手段

根据所学面向对象程序设计基本概念、string、向量等知识,依照该题规定设

计程序,并上机编程、调试,最后实现该题功能。

四、实验组织运营规定

由于该实验对学生合伙配合没有什么规定,因而没人一台机器,分别实现各

程序编程和调试。

五、实验条件

具备与学生数相似数目计算机机房

六、实验环节

1.实验前,复习所学第一、二、三章内容,并在纸上设计编写好程序;

2.实验时,上机输入编写好程序、编译、调试、实现程序功能;

3.实验后,认真总结实验中浮现各种出错、意外状况及调试过程,形成编程、

调试经验,并认真填写好实验报告。

八、实验报告

按照实验报告规定完整填写各项内容,仔细记录实验成果,认真总结并写好

实验总结。

九、其他阐明

实验4:去掉双斜杠注释

实验学时:2

实验类型:验证

实验规定:必修

一、实验目

通过本实验学习,使学生理解文献流知识,训练文献打开和关闭,向量,string

流分流等基本操作,为此后继续学习面向对象编程奠定基本。

二、实验内容

设计一种程序从给定文献中读取一段程序代码,该段代码包括大量注释内容,

规定该程序生成一种新文献,这个文献里存储是去掉了注释内容程序代码。

三、实验原理、办法和手段

根据第二至六章所学数组,文献输入输出,string分流,向量等知识,依照该

题规定设计程序,并上机编程、调试,最后实现该题功能。

四、实验组织运营规定

由于该实验对学生合伙配合没有什么规定,因而没人一台机器,分别实现各

程序编程和调试。

五、实验条件

具备与学生数相似数目计算机机房。

六、实验环节

1.实验前,复习所学第一、二章内容,并在纸上设计编写好程序;

2.实验时,上机输入编写好程序、编译、调试、实现程序功能;

3.实验后,认真总结实验中浮现各种出错、意外状况及调试过程,形成编程、

调试经验,并认真填写好实验报告。

八、实验报告

按照实验报告规定完整填写各项内容,仔细记录实验成果,认真总结并写好

实验总结。

九、其他阐明

实验5:彼此两点距离近来

实验学时:2

实验类型:设计

实验规定:必修

一、实验目

掌握C++数据类型、常量和变量以及修饰符用法。

掌握C++各种流程控制语句使用。

掌握函数定义、函数调用和函数阐明办法。

二、实验内容

用C++程序设计一种求解两点距离近来算法。

三、实验原理、办法和手段

根据第二至八章所学知识,依照题目规定设计程序,并上机编程、调试,最

后实现各题功能。

四、实验组织运营规定

由于该实验对学生合伙配合没有什么规定,因而没人一台机器,分别实现各

程序编程和调试。

五、实验条件

具备与学生数相似数目计算机机房。

六、实验环节

1.实验前,复习所学第一、二章内容,并在纸上设计编写好程序;

2.实验时,上机输入编写好程序、编译、调试、实现程序功能;

3.实验后,认真总结实验中浮现各种出错、意外状况及调试过程,形成编程、

调试经验,并认真填写好实验报告。

八、实验报告

按照实验报告规定完整填写各项内容,仔细记录实验成果,认真总结并写好

实验总结。。

九、其他阐明

实验6:简朴类定义

实验学时:2

实验类型:设计

实验规定:必修

一、实验目

掌握类、类数据成员、类成员函数定义方式。

理解类成员访问控制方式。

掌握对象定义和操作对象办法。

理解对象指针概念,学会用指针引用对象。

掌握静态数据成员和静态成员函数基本用法。

理解友元与友元函数作用,掌握其用法。

掌握对象成员及其常类型用法。

学会使用C++多文献方式编写程序。

二、实验内容

设计一种Student(学生)类,并使Student类具备如下特点:

该类具备学生姓名、学号、程序设计、信号解决、数据构造三门课程成绩。

学生所有信息由键盘输入,以提高程序适应性。

通过成员函数分别记录每个学生平均成绩和每门课程平均成绩,当课程数量增长

或减少时成员函数无需修改仍可求取平均成绩。

输出学生各科成绩与平均成绩。

学生对象定义采用对象数组实现。

记录不及格学生人数。

表格输出整洁美观。

能以最以便方式实现对课程数量和学生人数修改。

采用多文献方式组织程序。

设计三个图形类:Circle(圆)、Rectangle(矩形)、Triangle(三角形),规定:

Circle类基本信息:圆心坐标、半径;

Rectangle类基本信息:长、宽;

Triangle类基本信息:三个顶点坐标;

其中:成员变量为private属性,成员函数为public属性。

为Circle类设计缺省构造函数,并用init成员函数进行数据成员初始化。

为别的两个类设计各种构造函数:无参、带参、参数值缺省构造函数。

每个图形类有计算图形面积GetArea。,计算图形周长GetPerimeter。,显示图形基

本信息函数Show(),修改基本信息函数Set(形参)。以Circle类为例:通过GetArea()

计算圆面积,GetPerimeter()计算圆周长,Show。函数中显示圆心坐标、直径、周

长、面积等基本信息;Set(intx,inty,intr)函数可以修改圆心坐标和半径。

注意各种构造函数声明方式与定义实现。

当输入数据为不合理数据时(例如:输入三角形顶点与否能构成一种三角形),提示

顾客输入错误。

三、实验原理、办法和手段

根据第八至十四章所学知识,依照各题规定设计程序,并上机编程、调试,

最后实现各题功能。

四、实验条件

具备与学生数相似数目计算机机房。

五、实验环节

1.实验前,复习所学第一、二章内容,并在纸上设计编写好程序;

2.实验时,上机输入编写好程序、编译、调试、实现程序功能;

3.实验后,认真总结实验中浮现各种出错、意外状况及调试过程,形成编程、

调试经验,并认真填写好实验报告。

六、实验报告

按照实验报告规定完整填写各项内容,仔细记录实验成果,认真总结并写好

实验总结。。

实验7:继承、多态

实验学时:2

实验类型:设计

实验规定:必修

一、实验目

理解类继承概念,可以定义和使用类继承关系。

掌握派生类声明与定义办法。

熟悉三种派生方式访问特性。

掌握多基继承,理解和掌握虚基类。

理解编译时多态性和运营时多态性。

掌握虚函数定义与用法。

掌握纯虚函数和抽象类概念和用法,运用纯虚函数实现多态性。

二、实验内容

定义点Point类作为基类,在此基本上派生出直线Line类和圆Circle类,

在Circle类基本上以不同属性派生出圆柱Cylinder类和球Spheroid类。并规定基

类和各派生类具备如下特点:

Line类具有计算直线长度和斜率成员函数。

Circle类具有计算圆面积成员函数。

Cylinder类具有计算圆柱表面积和体积成员函数。

Spheroid类具有计算球体表面积和体积成员函数。

规定在实验报告中画出类层次图。

在题目基本上,增长如下内容:在Line类基本上派生长方形Rectangle类和正

方形Squre类,并分别在长方形Rectangle类和正方形Squre类基本上派生长方体

Cuboid类和正方体SquareBody类,并规定基类和各派生类具备计算各图形周长、

面积和体积功能,规定用纯虚函数实现。

注:可先定义一种抽象类一图形Figure类,具有求周长、面积、体积纯虚函

数,用此类进行派生。假设某个图形由上述几种图形构成,求该图形总面积(若

为平面图形)或总体积(若为立体图形)。

三、实验原理、办法和手段

根据第九至十四章所学知识,依照各题规定设计程序,并上机编程、调试,

最后实现各题功能。

四、实验组织运营规定

由于该实验对学生合伙配合没有什么规

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论