《面向对象程序设计》实验指导书 (1-6个实验,含参考代码).
《面向对象程序设计》实验指导书1
《面向对象程序设计》课程实验指导书实验一 Java开发环境的安装与配置一、实验目的:1. 掌握JDK、Eclipse的安装步骤。
2. 理解环境变量PATH, CLASSPATH的作用,以及Eclipse的配置。
3. 熟悉Eclipse的编辑、编译与调试环境,编写简单的Application程序编译执行并完成调试。
二、实验内容:熟悉JDK的安装和配置,学习如何编写并运行简单的Application程序 (能输出一条简单的问候信息);三、实验要求:1. 能正确地安装JDK2. 熟悉环境变量PATH, CLASSPATH设置方法,熟悉编辑环境3. 调试程序、编译,运行后得到正确的结果四、实验步骤:1.从/technetwork/java/index.html上下载最新版本的JDK,并安装。
2.设置环境变量PATH, CLASSPATH, 使得Java程序能正确编译和执行。
3.在Eclipse环境下编写一个HelloWorld.java程序,(1)在主方法static public void main(String[ ] args)中调用System.out.println()方法,使程序输出一条问候信息;(2) 编译运行程序,观察运行情况和输出结果。
(使用JDK环境,调用javac.exe和java.exe编译和执行程序)实验二 Java语言基础一、实验目的:熟悉Java基本语法,基本数据类型,各种运算符及表达式的使用,掌握运算符优先级,熟悉使用Java的选择语句,循环语句。
二、实验内容:1.编写Java Application程序,输出1900年到2000年之间的所有润年。
(闰年的判断条件:能被4整除且不能被100整除,或能被400整除);2.金字塔:Pyramid.java在屏幕上显示一个由星型符号“*”组成的金字塔图案,示例如下:****************要求:金字塔高度h,可以由用户设置。
《面向对象程序设计》实验指导书
实验一熟悉Visual Basic集成开发环境一、实验目的1.了解Visual Basic语言的功能特点。
2.熟悉Visual Basic的开发环境。
3.掌握建立、编辑和运行一个简单的VB应用程序的全过程。
二、实验内容创建一个“标准EXE”类型的应用程序。
要求学生建立、编辑、调试、运行和保存简单的VB程序。
三、实验步骤1.熟悉Visual Basic的开发环境。
(1)定制第一个开发环境。
1)单击“工程窗口”、“属性窗口”、“窗体布局窗口”及“工具箱窗口”右上角的关闭按钮2)单击Form,将Form窗口放到最大。
(2)定制第二个开发环境。
1)选择“视图”菜单中的“工程资源管理器”选项,显示“工程资源管理器”窗口。
2)选择“视图”菜单中的“属性窗口”选项,显示“属性窗口”。
3)选择“视图”菜单中的“窗体布局窗口”选项,显示“窗体布局窗口”。
4)选择“视图”菜单中的“工具箱”选项,显示“工具箱”窗口。
5)将“工程资源管理器”、“属性窗口”、“窗体布局窗口”、“工具箱”四个窗口用鼠标拖动到合适的位置。
(3)增加窗体。
单击“工程”菜单中的“添加窗体”选项,或者在“工程资源管理器”中的“工程”图标上单击鼠标右键,系统弹出一个快捷菜单,选择“添加窗体”选项,将在Form1的基础上添加一个窗体Form2。
(4)增加标准模块。
单击“工程”菜单中的“添加模块”选项,可增加一个标准模块Module1,再单击一次增加第二个便准模块Module2;或者在“工程资源管理器”中的“工程”图标上单击右键,系统弹出一个菜单,将鼠标移到“添加”菜单,选择“添加模块”选项,将在工程1种添加一个标准模块Module1,在选择“添加模块”选项,将在工程1种添加第二个标准模块Module2。
(5)增加类模块。
单击“工程”菜单中的“添加类模块”选项,或者在“工程资源管理器”中的“工程”图标上单击鼠标右键,系统弹出一个菜单,将鼠标移到“添加”菜单,选择“添加类模块”选项,将在工程1种添加一个类模块Class1。
《面向对象程序设计》实验指导书(选修)
《面向对象技术》实验指导专业:_________________学号:_________________姓名:_________________教师:_________________目录实验一类与对象 (4)一.实验目的 (4)二.实验内容 (4)三.提高练习 (6)四.程序清单 (7)实验二友元 (8)一.实验目的 (8)二.实验内容 (8)三.提高练习 (9)四.程序清单 (10)实验三模板 (11)一.实验目的 (11)二.实验内容 (11)三.提高练习 (12)四.程序清单 (13)实验四重载 (15)一.实验目的 (15)二.实验内容 (15)三.提高练习 (17)四.程序清单 (18)实验五继承性与派生类 (19)一.实验目的 (19)二.实验内容 (19)三.提高练习 (22)四.程序清单 (23)实验六多态性与虚函数 (25)一.实验目的 (25)二.实验内容 (25)三.提高练习 (28)四.程序清单 (29)实验七输入输出流、文件流与异常处理 (31)一.实验目的 (31)二.实验内容 (31)三.提高练习 (32)四.程序清单 (33)实验八面向对象分析、设计综合实验 (35)一.实验目的 (35)二.实验内容 (35)三.提高练习 (36)四.程序清单 (37)附录:课程设计题目 (39)第1题:设计一个学生学籍管理系统 (39)第2题:设计一个循环链表,用来表示大整数 (39)第3题:设计一个模拟电信计费程序 (39)第4题:设计一个保留字(或关键字)的统计程序 (40)第5题:设计一个文本行编辑程序 (40)第6题:设计一个数据文件处理程序 (40)第7题:设计一个超长整数类 (41)第8题:设计一个随机读写文件程序 (41)第9题:设计一个图形类体系 (41)第10题:设计一个简单生命仿真程序 (41)总结《面向对象方法》课程 (42)《面向对象方法》实验报告学号:姓名:实验一类与对象一.实验目的●学习类与对象的定义,声明和使用方法●数据成员与成员函数的访问权限●构造函数和析构函数的作用●重载成员函数●对象指针和对象数组●成员指针●静态数据成员和静态成员函数●嵌套类和子对象●常对象二.实验内容第Ⅰ题:基本练习1.定义一个矢量类Vector,其结构如下:●私有数据成员int x,y; 表示二维矢量的两个分量●构造函数实现初始化数据成员●输出数据成员函数void display( );●类外访问数据成员函数int getx( );int gety( );●功能成员函数实现矢量加、减、乘运算Vector Add(const Vector &ob2 );Vector Sub(const Vector &ob2 );int Mult(const Vector &ob2 );2.在Vector 类的基础上,定义矩阵类Matrix(2*2阶),其结构如下:●私有数据成员Vector lefttop,righttop,leftbottom,rightbottom; 表示2*2阶矩阵的四个元素。
面向对象程序设计实验指导书1
《面向对象程序设计》实验指导书2013.11.13目录实验1 VC++ 6.0开发环境应用入门实验2 C++简单程序设计实验3 函数的应用实验1 VC++ 6.0开发环境应用入门一、实验目的(1)了解Visual C++ 6.0的特点。
(2)熟悉Visual C++ 6.0的开发环境。
(3)学习用Visual C++ 6.0编写标准的C++控制台程序。
二、实验任务使用Visual C++ 6.0建立一个非图形化的标准C++程序,编译、运行以下程序:#include <iostream>using namespace std;int main(){cout<<"Hello! \n";cout<<"Welcome to C++! \n";}三、实验步骤1. 启动Visual C++ 6.0开发环境从“开始”菜单中选择“程序”| Microsoft Visual C++ 6.0| Microsoft Visual C++ 6.0,显示Visual C++ 6.0开发环境主窗口。
2. 创建一个项目单击File菜单中的New选项显示New(新建)对话框。
单击Projects标签,在Projects(项目)选项卡中,选择Win32 Console Application(Win32控制台应用程序)。
在Location(位置)文本框中指定一个路径,在Project Name(项目名称)文本框中为项目输入一个名字“lab1_1”,单击OK(确定)按钮。
在弹出Win32 Console Application-Step 1 of 1对话框中选择An empty project单选项,然后单击Finish(完成)按钮。
最后在New Project Information 对话框中单击OK按钮,完成项目的建立。
3. 建立C++源程序文件选择菜单命令Project | Add to Project | New对话框。
《面向对象程序设计》实验指导书 (1-6个实验,含参考代码)要点
面向对象程序设计实验指导书(适用:电子信息11级)彭召意陶立新编写计算机与通信学院2014.9目录实验一 C++基础的应用 (1)实验二类和对象的应用 (3)实验三类的构造函数、析构函数的应用 (4)实验四友员和运算符重载 (5)实验五类的继承与派生 (6)实验六类的多态性与虚函数 (7)附录:各实验的程序代码 (8)实验一 C++基础的应用(实验课时:2 实验性质:设计)实验名称: C++基础的应用实验目的: (1)进一步学习VC++6.0开发环境及程序调试方法。
(2)练习C++函数的定义及使用;(3)练习C++数组的定义及使用;(4)练习C++指针的定义及使用;(5)练习C++结构体的定义及使用;(6)练习多文件的程序的编译和运行方法;实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容: (1)熟悉Visual C++6.0编译系统的常用功能,特别是debug调试功能;(2)编程1:编写一个程序c1.cpp,用来求2个或3个整数的最大数。
要求:用重载函数的方法来求最大数;函数原型:int max( int a, int b) 和int max( int a, int b,int c)。
(3)编程2:编写一个程序c2.cpp,求:a!+ b! + c!的值。
要求:使用递归函数。
主程序和函数分开到两个源程序文件中,分别进行编译后,再运行;(4)编程3:有一个3*4的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号;(5)编程4:建立一个动态链表并进行输出和删除管理。
链表的每个节点为学生信息,包括:学号,姓名,性别,下一学生信息的指针。
程序的工作:(a)建立三个学生信息的节点,然后顺序输出该三个学生信息;(b)删除中间的节点,再顺序输出学生信息。
《面向对象程序设计》实验指导书(新)
《面向对象程序设计》实验指导书(新)《面向对象程序设计》实验指导书一、课程教学与实验教学计划学时比:48/16二、适用专业:信息管理与信息系统三、实验目的基本要求能够充分理解面向对象程序设计的思想和应用方法。
能够使用面向对象编程语言进行相应的程序设计和开发。
理解面向对象的基本思想、概念和特性以及面向对象的分析、建模、设计技术与方法。
掌握C++语言基本构成、类与对象、消息传递与函数、函数与运算符重载、继承性、多态性与虚拟函数、数据封装和隐藏及Windows 程序设计基础。
通过实验动手实践,使学生能够掌握面向对象程序设计的特征和基本思想,以及相应的具体实现和Windows程序设计基础知识。
四、实验内容实验一:循环控制(一)实验目的要求:熟悉VC++集成开发环境,学习使用控制台应用程序;创建工程,建立可执行文件并执行,观察结果。
掌握变量的声明和定义方法,掌握循环语句和条件语句的定义、作用和使用方法。
(二)实验设备:1.服务器;2.交换机;3.计算机。
(三)实验内容:1.编程求1!+2!+3!+4!+…+12!。
2.编程求所有的3位数素数,且该数是对称的。
所谓“对称”是指一个数,倒过来还是该数。
例如,375不是对称数,因为倒过来变成了573。
实验二:递归函数(一)实验目的要求:掌握函数的概念和使用方法,掌握递归函数的概念和使用方法。
(二)实验设备:1.服务器;2.交换机;3.计算机。
(三)实验内容:1.用递归函数来求1!+2!+3!+…+12!。
2.用递归的方法建立一个函数int fibonacci(int n),求Fibonacci数列中第n个数的值。
实验三:用气泡法排序(一)实验目的要求:掌握文件读写的方法,掌握递归函数的概念和使用方法。
(二)实验设备:1.服务器;2.交换机;3.计算机。
(三)实验内容:建立一个文件,文件中包含一系列数,用这些数构成一个数组,并按照数值,为这个数组从小到大排序,把排序结果输出到另一个文件中。
面向对象程序设计实验指导书
x2=4 d1=5.6 d2=12 问题二:①处调用的是哪个函数? 答:调用的是 int max_def(int x, int y, int z) { int temp = 0; return (temp=(x>y?x:y))>z?temp:z; } 问题三:②处的输出结果为什么是 d2=12,而不是 d2=12.3? 答:因为①处调用的是整型函数,d2 在此函数中被转换为整型,小数点后面被删除。 2.理解下面的程序并运行,然后回答问题。
7
} private:
int month; };
int day;
int year;
void main() {
CDate a; --------------------------.Set(10,15,2007) ; a.Print(); }
1.2 实验内容
1.2.1 程序阅读
1.理解下面的程序并运行,然后回答问题。
#include <iostream.h>
int max_def(int x, int y) {
return (x>y?x:y); } int max_def(int x, int y, int z) {
int temp = 0; return (temp=(x>y?x:y))>z?temp:z; } double max_def(double x, double y) { return (x>y?x:y); } int main() { int x1 = 0;
试设计一个复数类该类有实部和虚部两个成员数据数据成员采用私有访问权限同时该类有两个公有成员函数分别用来设定数据成员的值和输出数据成员的值在主函数中分别采用对象方式指针方式和引用方式来调用该类的公有函数并设置和输出数据成员的值
#《面向对象程序设计》(C++)实验指导书
实验 1 类和对象1.1实验目的和要求(1) 理解类和对象的概念,掌握声明类和定义对象的方法。
(2) 掌握构造函数和析构函数的实现方法。
(3) 初步掌握使用类和对象编制C++程序。
(4) 掌握对象数组、对象指针和string类的使用方法。
(5) 掌握使用对象、对象指针和对象引用作为函数参数的方法。
(6) 掌握类对象作为成员的使用方法。
(7) 掌握静态数据成员和静态成员函数的使用方法。
(8) 理解友元的概念和掌握友元的使用方法。
1.2实验内容和步骤1.输入下列程序//test4-1.cpp#include<iostream>using namespace std;class Coordinate{ public:Coordinate(int x1,int y1){ x=x1;y=y1;}Coordinate(Coordinate &p);~Coordinate(){ cout<<”Destructor is calleded\n”;}int getx(){return x;}int gety(){return y;}private:int x,y;};Coordinate::Coordinate(Coordinate &p){ x=p.x;y=p.y;cout<<”copy-initialization Constructou is called\n”;}int main(){ Coordinate p1(3,4);Coordinate p2(p1);Coordinate p3=p2;cout<<”p3=(“<<p3.getx()<<”,”<<p3.gety()<<”)\n”;return(0);}(1)写出程序的运行结果。
(2)将Coordinate类中带有两个参数的构造函数进行修改,在函数体内增添下述语句:cout<<”Constructor is called.\n”;写出程序的运行结果,并解释输出结果。
《面向对象程序设计》实训指导书
《面向对象程序设计》实训一、实训目的:1.使学生进一步巩固《面向对象程序设计》课程中所学到的知识,熟练掌握并综合运用C++语言进行程序设计,增强实际编程能力,从而达到用C++语言进行中等难度程序开发的目标。
2.使学生掌握面向对象设计开发的基本思想和方法。
加强对VC++编程环境的使用能力,掌握VC++编程环境中的调试功能。
3.培养学生在已有的知识基础上进一步获取新知识的能力,提高分析问题和解决问题的能力。
4.培养和提高学生的逻辑思维、抽象思维和统筹规划能力;培养学生独立完成程序设计开发的工作能力。
二、实训环境:1.操作系统平台:Windows 2000 / Windows XP2.程序设计平台:VC++ 6.03.其它应用软件:Word、Visio等三、实训基本要求:1.熟练掌握C++语言的各种语法成分;深入理解面向对象语言的各种概念,能够准确应用C++语言提供的编程机制,如:类的定义、类的继承、抽象类的定义、操作符的重载等。
熟练掌握多文件结构。
2.具备常用算法的设计能力,能运用面向对象方法,解决实际问题。
3.能熟练使用VC++编程环境,掌握VC++中的调试功能。
4.熟练掌握程序设计中多文件组织结构的编写方法。
5.实训选题要求实训题目可以是学生自选题目或教师指定题目。
学生自选题目必须写出开题报告,阐明题目内容和功能要求,经教师审核通过后方可作为正式选题。
6.课题规模要求(1)题目涉及的自定义基础类应不少于2个、必须有派生类。
(2)题目涉及的主要功能模块应有3-5个,或更多。
(3)数据的存储可直接存到内存或使用文件,也可以使用数据库。
(4)用户界面可以是命令行方式下(要求做成简易菜单形式),也可以采用图形界面,界面个数应不少于3个。
(5)每个实训题目的选择每班最多不超过5组同学。
7.分工与合作要求每个题目可由一或两个学生(教师规定)共同完成,每组组员之间必须要有明确的程序设计分工,并独立完成各自的设计任务,最后组内联调、共同整理项目文档。
面向对象程序设计实验指导书
《面向对象C++程序设计》实验指导书计算机科学与技术学院《面向对象C++程序设计》课程组实验指导书目录实验一 C++基础练习 (1)实验二 C++简单程序设计练习 (4)实验三类与对象(一) (9)实验四类与对象(二) (14)实验五派生类与继承 (21)实验六虚函数与多态性 (31)实验七函数模板与类模板 (40)实验八输入输出的格式控制 (44)实验九文件的输入输出 (49)实验十综合练习 (55)实验十一设计时间类——计算程序的运行时间 (68)附录:C++语言上机实验环境介绍 (71)实验一 c++基础练习一、实验性质验证性实验2学时二、实验目的和要求1.掌握c++程序的基本格式与规范,学会编写简单的c++程序。
2.理解c++程序结构的特点。
3.熟悉c++程序基本的输入输出操作。
4.掌握c++数据类型常量和变量以及修饰符的使用方法。
5.掌握函数定义、函数调用和函数说明的方法。
6.熟悉作用域运算符的功能和基本使用方法。
7.掌握c++内存的动态分配与释放方法。
8.理解引用的概念,掌握引用的使用方法。
三、实验内容:1编写一个简单程序,输出“welcome you”,并给程序加一行注释“fisrt c++ program”。
2编写一个完整的包含输入和输出的简单c++程序。
3编写内置函数求解2x^+4x+5的值,x为整数,并用主函数调用该函数。
利用函数重载,重载上面的函数,x为浮点数。
4编写一个程序,对一个整数数组求和,求和的结果使用全局变量sum存储,同时对整数中的奇数求和,结果使用局部变量sum存储,在主程序将两个结果输出。
本题要求体会和理解作用域运算符的概念与基本使用方法。
5编写一个程序动态分配一个浮点空间,输入一个数到该空间中,计算以该数为半径的圆的面积并在屏幕上显示,最后释放该空间,请使用new,delete运算符。
四、实验步骤第一步:根据实验内容编写下面的代码进行调试。
#include <iostream.h>void main(){ // first c++ programcout<<”\n welcome you \n”;}第二步:下面的程序对用户输入的口令进行判断,输出不同的结果。
《面向对象程序设计实践》课程实验指导书
《面向对象程序设计》课程实验指导书实验一简单电阻电路的计算一、实验目的:能编制第一个程序。
熟悉IDE的使用方法,掌握项目的建立,文件编辑,编译运行和调试的过程和方法。
二、实验环境:Visual C++ 2005。
三、实验内容:1.编制一个程序计算简单电阻电路的电流值。
电路示意图如下:R2.程序能接收用户输入的电压E与电阻值R。
3.程序能判断输入值是否正确,不正确时能进行正确处理。
数据不正确的情况包括:电阻为0 或为负值。
4.输出计算的电流值结果I。
四、实验要求:1. 根据实验内容编程。
2. 上机,建立新项目,录入源代码,编辑,编译,运行,调试直至得出正确的运行结果。
五、实验学时:4学时六、实验步骤:1.根据课堂讲授内容,编制能计算电阻电路电流的程序。
2.进入编程环境,建立一新项目proj1(文件→新建→项目→Visual C++→常规→空项目);3.在新项目中建立一个新文件main.cpp(项目→添加新项→代码→C++文件(*.cpp))。
4.向main.cpp中录入编制的程序。
5.编译(生成→生产proj1)和运行程序(调试→启动调试)。
6.如果编译或运行有错,修改错误或调试直至程序能给出正确的运行结果。
七、选作实验1.上机运行第二章习题7。
2.上机运行第三章习题2、13、18。
实验二阶梯型电阻电路的计算程序一、实验目的:1.能利用条件判断、循环和数组实现较复杂的程序。
2.能利用函数封装单一的功能实现。
3.能实现文件的分别编译。
二、实验内容:1.编制一个程序计算阶梯型电阻电路的电流值。
电路示意图如下:I2nR2n2.能接收用户输入的电压源电势E和所有电阻的电阻值。
3.程序能判断输入值是否正确,不正确时能进行正确处理。
输入数据不正确的情况包括:电阻输入0或负值,输入电阻的数目为奇数。
4.输出计算结果:每个电阻上的电压和电流。
三、实验要求:1. 根据实验内容编程。
2. 上机,建立新项目,录入源代码,编辑,编译,运行,调试直至得出正确的运行结果。
《面向对象程序设计》实验指导书
《⾯向对象程序设计》实验指导书《⾯向对象程序设计》实验指导书郭⽟柱⼴东商学院信息学院⼆0⼀0 年⼗⼆⽉⽬录实验⼀ Java基础实验实验⼆ Java⾯向对象特性试验--Java中的类、对象和⽅法实验三类的继承、多态、接⼝、访问控制符与修饰符实验四 Java资源及其利⽤实验五 Java 语⾔的异常处理实验六输⼊输出流实验七图形⽤户界⾯设计实验⼋ Java Applet及多线程试验附录1 实验报告格式实验⼀ Java 基础实验⼀、实验⽬的与要求1. 学习编写简单的Java 程序。
2. 学习掌握Java 基本数据类型及其基本运算。
3. 学习掌握Java 的基本流程控制语句。
⼆、相关知识1. 了解JDK 的⼯作环境,以及如何使⽤JDK 进⾏编程。
2. 熟悉集成软件 eclipse3.5及其使⽤。
⼆、实验内容1. 编写Hello.java 程序并运⾏。
2. ⽤Java 语⾔编写⼀个应⽤程序在屏幕上输出1000之内的素数。
3. ⼀个数如果恰好等于它的因⼦之和,这个数就称为“完数”,⽐如28=1+2+4+7+14。
编写⼀个应⽤程序在屏幕上输出1000之内的完数。
4. 求满⾜1!+2!+3!+ …+n!≤9999的最⼤整数n 。
5. ⼀个三位的整数如果它的各位数字的⽴⽅之和等于这个三位数,就称此数为⽔仙花数,⽐如 333173371++=,编写⼀个应⽤程序在屏幕上输出所有⽔仙花数。
6. 下⾯程序的输出结果是什么?实验⼆ Java⾯向对象特性试验-Java中的类、对象和⽅法⼀、实验⽬的与要求1. 掌握类的定义和使⽤。
2. 掌握对象的声明、创建和使⽤。
3. 掌握构造⽅法的定义和使⽤。
4. 掌握类⽅法(静态⽅法)和⾮类⽅法(⾮静态⽅法)的区别和使⽤。
5. 掌握成员变量和局部变量的区别和使⽤。
⼆、实验内容1. 编写⼀个Java程序,定义⼀个表⽰学⽣的类,类名Student,其成员变量有:学号、班级姓名、性别、年龄;成员⽅法:(1)获得班号(2)获得姓名(3)获得年龄(4)修改年龄;创建⼀个Student的对象,修改该对象的年龄,并输出该对象的年龄。
《面向对象程序设计》实训指导书
《面向对象程序设计》实训一、实训目的:1、学生进一步巩固《面向对象程序设计》课程中所学到的知识,熟练掌握C++语言程序设计,增强实际编程能力。
同时,加强对VC++编程环境的使用能力,掌握VC++编程环境中的调试功能。
从而达到用C++语言进行中等难度程序开发的目标。
2、学生掌握面向对象设计开发的基本思想和方法,培养学生在已有的知识基础上进一步获取新知识的能力,提高分析问题和解决问题的能力。
3、培养和提高学生的逻辑思维、抽象思维和统筹规划能力,培养学生独立完成程序设计开发的工作能力。
为今后从事专业性软件开发工作打下基础。
二、实训环境:1、操作系统平台:Windows 98 / Windows 2000 / Windows XP2、软件开发平台:Visual C++ 6.04、其它应用软件:Microsoft Access / SQL Server ,Word等三、实训的基本要求1、实训选题要求实训题目可以是学生自选题目或教师指定题目。
学生自选题目必须写出开题报告,经教师审核通过后方可作为正式选题。
2、课题规模要求(1)题目涉及的自定义基础类应不少于3个、必须有派生类。
(2)题目涉及的主要功能模块应不少于6个。
(3)数据的存储可以使用数组,使用文件,也可以使用数据库。
(4)用户界面最好采用图形界面,界面个数不少于3个。
3、分工与合作要求每个题目由3个学生共同完成,每组的人数视题目规模由教师规定。
每组组员之间必须要有明确的分工,并独立完成各自的设计任务,最后组内联调、共同整理项目文档。
4、所创建的程序名、类名、文件名要求必须加上本人的姓名拼音。
5、实训内容要求在一周内完成。
晚交者扣3~5分,超过截止日期的实训成绩计为零分。
6、实训报告的具体要求请见后面的“实训报告格式要求”。
四、实训内容:实训题目一、模拟银行储蓄存取款系统请实现一个简单的银行储蓄系统,完成活期用户的存款和取款业务。
要求如下:1.实现描述银行的类,记录系统中现有哪些储户(提示:可用数组实现,但须注意判断数组越界的情况),该类中要求包含三个函数:(1)生成新储户的函数(2)按照账户删除储户的函数(3)按照账户查询储户的函数,要求显示查询结果。
《面向对象程序设计》实验指导书
实验一Visual C++/C++Builder初识与选择分支程序设计实验目的●了解Visual C++/C++ Builder的集成开发环境●初步掌握在VC++或C++ Builder中开发应用程序的一般步骤●初步掌握程序编辑、调试的基本方法●掌握单分支结构语句:if…●掌握双分支结构语句:if…else…●掌握多分支选择结构语句:switch…case…;实验示例[例1-1]在VC++开发环境中,编写一个计算三角形面积的C++程序,调试运行程序,运行时输入三角形的三条边。
实现步骤:1.启动Visual C++开发环境通过执行菜单“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++6.0”项,启动Visual C++开发环境。
2.编辑程序1)执行VC++菜单“文件”→“新建”项,打开新建对话框;2)在对话框中单击“文件”标签,在弹出的“文件”选项卡中单击“C++ Source File”选项;3)在“目录”文本框中输入或选择存放程序的文件夹,在“文件”文本框中输入程序文件名;4)单击“确定”按钮,系统打开文件编辑窗口,参照如下代码,编写计算三角形面积的源程序:#include <iostream.h>#inclkude <math.h>using namespace std;void main(){double a,b,c,s,area;cout<<”a,b,c? ”;cin>>a>>b>>c; // 键盘输入三角形三条边长s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));cout<<”area: ”<<area<<endl;}3.编译和链接程序1)执行VC++菜单“编译”项,屏幕出现“询问是否创建默认项目工作区”对话框;2)单击“是”按钮,出现“询问是否保存文件”对话框;3)单击“是”按钮保存文件后,系统开始对源程序进行编译。
《面向对象程序设计》实验指导书
《面向对象程序设计》实验指导书第一部分实验教学大纲课程名称:面向对象程序设计实验一、课程简介及基本要求面向对象的程序设计是一门实践性很强的课程,每个学生必须完成一定数量的上机作业。
通过上机作业进一步加深对课程基本内容的理解。
同时,在程序设计方法及上机操作等基本技能和科学作风方面受到比较系统的、严格的训练。
由于学生编程和上机的熟悉程度往往差别较大,本大纲所要求的实验为每个学生必须完成的实验,即最低要求。
其它上机内容由学生在教师指导下自选,内容可以是习题中编写的程序,也可以是学生解决实际问题中所编写的程序。
二、实验课程目的与要求实验课是对学生的一种全面综合训练,是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。
本课程使学生熟悉C++的语法特性,了解C与C++的区别和兼容性;理解面向对象程序设计的基本原理,包括类、对象、抽象、封装、继承和多态性等关键要素以及其关键语法特性—类;掌握用C++编写面向对象程序的一般方法;了解VC++编程环境。
三、主要仪器设备PC机器一台。
装有C++builder 或Visual C++或其他的C++编译软件。
四、实验方式与基本要求要求把每次实验的程序文本和运行结果通过邮件方式发送给实验指导老师.五.考核与报告本课程实验考试方式是考查,按一般课程考试方式进行,主要内容包括实验操作和实验报告,实验成绩占该课程形成性考核成绩的30%。
实验报告的规范:实验完成后填写统一的实验报告,给出实验内容题目、年级、姓名、学号、指导教师、完成日期,并详细填写:实验目的、实验程序、实验结果及分析、存在的问题。
实验0、C++开发环境应用(课外实验 2学时)1、实验目的(1)了解C++开发工具的特点(2)熟悉C++开发环境(2)学习用C++编写标准的C++程序2、实验任务使用C++来建立一个非图形化的标准C++程序,编译、运行下例程序:#include <iostream.h>void main(void){cout<<”Hello!\n”;cout<<”Welcome to C++!\n”;}3、实验步骤(1)启动Visual C++开发环境(2)创建一个项目a.单击File菜单中的New选项,显示示新建对话框b.选择Win32 Console Application(VC++)。
《面向对象程序设计》实验指导书
《⾯向对象程序设计》实验指导书《⾯向对象程序设计》实验指导书实验⼀ Java开发环境⼀、实验⽬的:1、熟悉JAVA开发环境(JBUILDER/JDK)2、认识Java程序结构。
⼆、实验内容:1、配置JDK,编译调试HelloWorld程序。
2、熟悉JAVA开发⼯具,编译调试HelloWorld程序。
三、实验要求:1、HelloWorld程序输出⼀条简单的问候信息;2、实验报告中对程序结构做出详细的解释;3、实验报告中给出配置JDK的步骤。
四、实验学时、性质:2学时、验证性五、实验步骤:1、进⼊Java编程环境;2、新建⼀个Java⽂件,命名为HelloWorld.java;3、定义主⽅法public static void main(String[ ] args);调⽤System.out.println()⽅法,使程序输出⼀条问候信息;4、编译运⾏程序,观察运⾏情况和输出结果。
(如果使⽤JDK环境,调⽤javac.exe和java.exe编译和执⾏程序)实验⼆类与对象⼀、实验⽬的:1、掌握类的定义与成员的封装。
2、掌握对象的创建,对象属性的访问和⽅法的调⽤。
3、掌握包的使⽤。
⼆、实验内容:1、⾃定义⼀个学⽣类。
2、导⼊并访问其他同学定义的学⽣类。
三、实验要求:2、实验报告中记录访问不同属性时编译器的反馈并分析原因。
四、实验学时、性质:3学时、验证性五、实验步骤:1、创建⼀个Java包,以⾃⼰的英⽂名字命名。
2、定义⼀个学⽣类,包含三个属性学号、姓名和性别,访问修饰符分别是private、⽆修饰符和public修饰符。
3、在另⼀个类中创建学⽣类的对象,分别设置三个属性的值,观察实验结果。
4、导⼊同学定义的学⽣类。
分别访问三个属性,观察实验结果。
实验三数据类型与数组⼀、实验⽬的:1、掌握数据类型与数组的定义、初始化与使⽤。
⼆、实验内容:1、查看⾃⼰名字的UNICODE编码。
2、转置⼆维矩阵。
三、实验要求:1、使⽤已知给定的数值初始化⼀个5X5的⼆维数组。
面向对象程序设计实验指导书
《面向对象程序设计》实验教学大纲一、大体信息二、实验安排三、实验目的、内容与要求实验一成立一个非图形化的C++程序(一)实验目的1.了解Visual C++的特点。
2.熟悉Visual C++的开发环境。
3.学习利用Visual C++编写标准的C++操纵台程序。
4.学会利用VC++开发环境中的debug调试功能。
(二)实验内容成立、编译和运行一个标准C++操纵台程序。
(三)实验要求1.成立一个标准C++操纵台程序。
2.学会编译、运行教材例2-1程序。
3.下课前完成实验内容,提交给教师检查。
实验二设计一个用于人事治理的People类(一)实验目的1.把握类的概念和利用;把握对象的声明和利用。
2.学会利用类的构造函数和析构函数。
3.学习类的组合利用方式。
(二)实验内容考虑到通用性,那个地址只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(诞生日期)、id(身份证号)等。
其中“诞生日期”概念为一个“日期”类内嵌子对象。
用成员函数实现人员信息的录入和显示。
(三)实验要求1.程序中应包括——构造函数和析构函数、拷贝构造函数、内联成员函数、类的组合。
2.下课前完成实验内容,提交给教师检查。
实验三实现Client类(一)实验目的1.学习并把握类的静态成员的利用。
2.学习多文件结构在C++程序中的利用。
(二)实验内容概念字符型静态数据成员ServerName,保留其效劳器名称;整型静态数据ClientNum,记录已概念的客户数量;概念静态函数成员ChangeServerName( )改变效劳器名称。
(三)实验要求1.在头文件中概念类。
2.文件中实现类的概念,再添加文件,在其中概念main( )函数,测试Client 类。
3.下课前完成实验内容,提交给教师检查。
实验四实现Employee类(一)实验目的1.学习字符串数据的组织和处置2.把握指针的利用方式3.利用字符数组和标准C++库练习处置字符串的方式(二)实验内容1.声明一个Employee类,其中包括表示姓名、街道地址、城市和邮政编码等属性,包括change_name( )和display( )等函数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
编写main函数测试基类和派生类的各属性很函数的访问。修改派生类的派生方式以及基类成员的访问方式,再测试看看基类和派生类的属性访问方式有何不同。
实验名称:类和对象的应用
实验目的:(1)熟悉C++面向对象的程序设计的基本概念;
(2)练习类的定义和对象的创建;
(3)练习对象的成员函数的调用方法以及对象的初始化;
实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);
(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
(2)编程1:编写一个程序c1.cpp,用来求2个或3个整数的最大数。要求:用重载函数的方法来求最大数;函数原型:int max( int a, int b)和int max( int a, int b,int c)。
(3)编程2:编写一个程序c2.cpp,求:a!+ b! + c!的值。要求:使用递归函数。主程序和函数分开到两个源程序文件中,分别进行编译后,再运行;
实验三
(实验课时:2实验性质:设计)
实验名称:类的构造函数、析构函数的应用
实验目的:(1)练习类的构造函数、析构函数的定义和使用方法;
(2)练习对象数组、对象指针的使用;
(3)练习类的静态成员的使用。
实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);
(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容:(1)编程:设计一个学生类。要求:
学生的属性有:学号,姓名,性别;
学生的行为有:输入学生的上述属性和输出学生的上述属性。
编写构造函数对学生的所有属性初始化,无参数的构造函数设置学号为1001,姓名为“张三”,性别为‘M’(‘M’代表男,‘F’代表女)。
该文件需要包含头文件:stdafx.h,即在开头有语句:#include“stdafx.h”
思考题:假如已建立了两个C++源程序c1.cpp和c2.cpp。先用open打开c1.cpp,并完成了编译、连接和运行,再打开c2.cpp,对它进行编译和连接。此时会出现什么问题?原因何在?怎样解决?
(实验课时:2实验性质:设计)
(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容:事先编好程序,上机调试和运行程序,分析结果。
(1)有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加。如:c=a+b。
(2)编写一个友元函数来读取矩阵指定所在行列的值。
(2)掌握C++函数的定义及使用,掌握函数的嵌套调用和递归调用的方法;
(3)掌握C++数组、指针、结构体的定义及使用;
(4)掌握多文件的程序的编译和运行方法;
(5)程序格式规范,程序运行正确;
(6)认真书写实验报告,如实填写各项实验内容。
实验步骤:(1)启动Visual C++6.0开发环境;
(2)熟悉Visual C++6.0编译系统的常用功能;
(3)在file菜单中,新建C++源程序c1.cpp;
(4)编辑C++源程序文件c1.cpp的内容。
(5)编译c1.cpp,系统会提示是否创建工程(由于前面没有创建工程),选择“是”。则创建一个工程;
(6)程序编译正确时,则可建立可执行程序;
(注意观察每步的结果)
(7)运行可执行文件;
(8)关闭工作空间。
(2)修改上述程序:修改定义析构函数,在析构函数中输出学号。再运行程序,观察运行结果。
(3)修改上述main程序:使用对象指针,用new生成一个学生对象,然后,用delete清除该对象,使用单步运行观察运行结果。
(4)修改上述程序:增加一个私有数据成员成绩score;增加一个成员函数readdata:输入一学生的学号和成绩;增加一个成员函数getscore:取得学生的成绩。再修改main函数;定义一个班的同学(假如一个班有10位同学,采用对象数组),输出该班的平均成绩。
(2)掌握C++对象数组、对象指针的使用;
(3)掌握类的静态数据成员的定义和使用;
(4)程序格式规范,程序运行正确;
(5)认真书写实验报告,如实填写各项实验内容。
实验步骤(1)启动Visual C++6.0开发环境;
(2)创建一个项目;
(3)建立C++源程序文件;
(4)编辑C++源程序文件内容;
(5)建立并运行可执行程序;
(3)掌握对象的成员函数的调用方法;
(4)程序格式规范,程序运行正确;
(5)认真书写实验报告,如实填写各项实验内容。
实验步骤:(1)启动Visual C++6.0开发环境;
(2)创建一个项目;
(3)建立C++源程序文件;
(4)编辑C++源程序文件内容;
(5)建立并运行可执行程序;
(6)关闭工作空间。
实验要求:(1)掌握C++运算符重载的概念和使用方法;
(2)熟悉转换构造函数的使用方法;
(3)程序格式规范,程序运行正确;
(4)认真书写实验报告,如实填写各项实验内容。
实验步骤:(1)启动Visual C++6.0开发环境;
(2)创建一个项目;
(3)建立C++源程序文件;
(4)编辑C++源程序文件内容;
(9)对编程2,在file菜单中,新建C++源程序cpp2_1;
(10)编辑C++源程序文件cpp2_1的内容;
(11)编译cpp2_1,系统会提示是否创建工程(由于前面没有创建工程),选择“是”,则创建工程;
(12)在file菜单中,新建C++源程序cpp2_2;
(13)编辑C++源程序文件cpp2_2的内容;
在类体中声明成员函数,在类外定义成员函数。
思考题:类的三种继承方式的主要区别是什么?
实验要求:(1)掌握继承与派生的概念;
(2)掌握通过继承派生出一个新的类的方法;
(4)编程3:设计一个汽车类Car。成员变量有:品牌,颜色,车门,车灯,行驶速度。成员函数有:打开车门、打开车灯、加速、减速等。最后,编写一个主程序来测试该类及功能。(提示:在成员函数中用输出成员函数名来表示该成员函数被调用)
实验要求:(1)掌握C++类和对象的基本概念;
(2)掌握C++类和对象的定义及使用;
面向对象程序设计
实验指导书
(适用:电子信息11级)
彭召意陶立新编写
计算机与通信学院
2014.9
实验一
(实验课时:2实验性质:设计)
实验名称:C++基础的应用
实验目的:(1)进一步学习VC++6.0开发环境及程序调试方法。
(2)练习C++函数的定义及使用;
(3)练习C++数组的定义及使用;
(4)练习C++指针的定义及使用;
实验内容:事先编好程序,上机调试和运行程序,分析结果。
(1)编程1:定义并实现一个简单的学生类:公有属性为:学号、姓名、班级,成员函数为输入和显示一个学生的上述信息;
(2)将程序(1)中的数据成员改为私有的,考虑对程序有何影响;
(3)编程2:设计一个长方形类Rectangle。成员变量包括:长度和宽度,成员函数有:Area计算面积,Set设置长方形的长和宽,Get获取长方形的长和宽。最后,编写一个主程序来测试该类及成员函数。
(5)建立并运行可执行程序,并分析结果;
(6)关闭工作空间。
(实验课时:2实验性质:设计)
实验名称:类的继承与派生
实验目的:(1)进一步理解继承与派生的概念;
(2)掌握通过继承派生出一个新的类的方法;
实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);
(4)编程3:有一个3*4的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号;
(5)编程4:建立一个动态链表并进行输出和删除管理。链表的每个节点为学生信息,包括:学号,姓名,性别,下一学生信息的指针。程序的工作:(a)建立三个学生信息的节点,然后顺序输出该三个学生信息;(b)删除中间的节点,再顺序输出学生信息。
(5)不用对象数组,而使用静态的数据成员来实现(4)中求一个班的学生的平均成绩,学生的成绩在构造函数中输入。
(提示:定义2个静态数据成员,1个是存储总成绩,1个是存储学生人数)。
(6)分别运行上述程序,并分析结果。
注意:在增加一个新的功能时,可以把暂时不需要的功能代码给注释掉。
实验要求:(1)掌握C++类的构造函数、析构函数的定义和使用方法;
(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。
实验内容:事先编好程序,上机调试和运行程序,分析结果。
(1)编程:编写一个学生类Student。要求: