您好,欢迎访问三七文档
面向对象上机实验考试题目题目(一)要求:将可执行程序命名为ParkSystem.exe随着家庭购买汽车的增加,停车场车位紧张的问题越来越突出。请根据题目要求完成简单的车位管理程序。1.停车场有若干停车位(为说明问题,假定为3个),每个位置可以存放不同种类的的汽车,包括卡车Truck,客车Carriage和小轿车Car,但同一时刻一个位置只能存放0或1辆汽车。2.管理系统模拟实际车辆停车的情况:新来车辆时如果有空位,按顺序为该车分配停车位;车辆开走时,交纳相应停车费;统计各类车辆的数量。3.定义描述停车场的类Park,其中有3个位置用于存放各类车辆。4.定义基类Automobile,至少包括纯虚函数Pay用于显示车辆信息并交纳相应停车费。5.定义派生类Truck,Carriage和Car,这些车辆除了拥有车牌号(字符串)、车辆已使用年数(整数)之外,Truck还拥有载重量(浮点数,单位吨)属性,Carriage还拥有乘坐人数(整数,单位人)属性,Car还拥有排气量(浮点数,单位L)属性。具体实现上述纯虚函数Pay,显示每类车辆的相应信息,并给出计价提示,其中Truck收费2元/小时,Carriage收费1.5元/小时,Car收费1元/小时。6.重载输入“”操作符,使得可以通过cin直接读入每类车辆的相应信息。7.编写main函数,测试上述所要求的各种功能,即根据菜单命令为新来车辆分配停车位、开走车辆(输入车位编号)时付费、显示停车场中各类车辆的数量。提示:基类Automobile的定义至少包括以下纯虚函数Pay,/////////////////////////////////////////////////////*****************************************************/////////////////////////////////////////////////////题目(二)要求:将可执行程序命名为PointSystem.exe题目:我们在用Word软件时经常使用撤销命令和重复命令的操作,这体现了软件设计中的人性化方面,在很多软件中都有应用。请按题目要求实现一个简单的数据编辑器,具有撤销命令和重复命令的功能。1.实现命令管理类CommandManager,包括基本的函数:a)intundo()撤销上一条命令,撤销命令正常时返回1,直到所有的命令都撤销完不能再撤销时返回0;b)intredo()重复命令,曾经撤销的命令可以按照次序再次执行,正常时返回1,直到没有撤销的命令可以重复执行时返回0为完成撤销和重复操作,需要将命令记录依次保存到管理类中(假设可以保存3条记录),所以该类还包括函数:intaddCommand(ICommand*c)将某个命令记录放入该管理类中,正确时返回1,记录已满时返回0,其中ICommand说明见下2.设计命令记录的抽象类ICommand,其中包括基本的函数:a)virtualvoiddoit()=0执行该命令b)virtualvoidundo()=0撤销执行该命令3.系统中的命令用于处理数据类Point,该类包含属性x和y(整数),构造函数用以给该属性赋初值,重载输入输出运算符,以及成员函数a)voidRightMove(intnum);使Point类中的点坐标右移numb)voidUpMove(intnum);使Point类中的点坐标上移num4.该系统中有三种操作记录种类,分别为a)整数相加命令RightCommand类,其中包括属性Point*pPoint和intnum,构造函数用以给属性赋初值,执行命令时计算pPoint-RightMove(num)并输出*pPoint的值,撤销操作时恢复原来的值并输出*pPoint的值;b)整数相减命令UpComand类,其中包括属性Point*pPoint和intnum,构造函数用以给属性赋初值,执行命令时计算pPoint-UpMove(num)并输出*pPoint的值,撤销操作时恢复原来的值并输出*pPoint的值;5.编写main函数,测试上述功能。这里要求所有的命令均是对同一个Point数据对象进行的处理;而且在将某条命令加入命令管理器之前,应确保该命令已经执行。测试的功能包括创建若干条需要的命令记录,将命令记录加入命令管理器中,撤销命令,重复命令,随时显示相应的/////////////////////////////////////////////////////*****************************************************/////////////////////////////////////////////////////面向对象实验上机题目(三)要求:将可执行程序命名为TransManager.exe题目:事务具有ACID特性,在现代应用系统中建立事务环境是保证信息完整性和一致性的重要手段,请按照题目要求实现简单的事务管理操作。1.实现事务管理类TransactionManager,其中包括基本的函数:a)voidcommit()提交事务,即将事务环境中的所有操作均提交执行b)voidrollBack()回滚事务,即将事务环境中的所有操作均放弃执行为完成统一提交,需要将操作记录依次保存到事务环境中(假设可以保存5条记录),所以该类还包括函数:intaddOperate(IOperator*o)将某个操作记录放入事务环境中,正确时返回1,记录已满时返回0,其中IOperate说明见下2.设计操作记录的抽象类IOperator,其中包括基本的函数:a)voidexecute()执行该操作b)voidgiveup()放弃执行该操作3.该系统中有三种操作记录种类,分别为a)复数求模操作ComplexOperate类,其中包括属性real和image,构造函数用以给这两个属性赋初值,执行操作时计算该复数的模并输出结果,放弃操作时输出该复数并说明放弃操作(提示:math.h中函数sqrt(a,b))b)字符串连接操作StringOperate类,其中包括属性preString和postString,构造函数用以给两个属性赋初值,执行操作时计算两个字符串连接后的结果并输出,放弃操作时输出这两个字符串并说明放弃操作c)字符比较操作CharOperate类,其中包括属性preChar和postChar,构造函数用以给两个属性赋初值,执行操作时比较两个字符值并输出比较结果,放弃操作时输出这两个字符并说明放弃操作4.编写main函数,测试上述功能,如创建若干条需要的操作记录,并将操作记录加入事务环境中,提交事务或放弃事务
本文标题:面向对象上机题
链接地址:https://www.777doc.com/doc-4412663 .html