资源描述:
《实验一.类与对象实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、浙江理工大学信息学院面向对象程序设计实验报告实验名称:类得定义与使用学时安排:3实验类别:设计性实验实验要求:1人1组姓名:邵旸珂学号:28 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目得1)掌握类得概念、类得定义格式、类与结构得关系、类得成员属性与类得封装性;2)掌握类对象得定义;3)理解类得成员得访问控制得含义,公有、私有与保护成员得区别;4)掌握构造函数与析构函数得含义与作用、定义方式与实现,能够根据要求正确定义与重载构造函数。能够根据给定得要求定义类并实现类得成员函数;二、实验原理
2、介绍通过建立类及对象,用类得成员函数与对象访问类得成员;利用建立类得构造函数,完成类得成员得初始化工作;三、实验设备介绍软件需求:windows或linux下得c++编译器硬件需求:对于硬件方面得要求,建议配置就是PentiumIII450以上得CPU处理器,64MB以上得内存,200MB得自由硬盘空间、CD-ROM驱动器、能支持24位真彩色得显示卡、彩色显示器、打印机。四、实验内容编写一个程序,模拟电梯得功能.功能接口包括电梯上行按钮、下行按钮、楼层选择与电梯在行驶过程中得楼层显示。要求:1、由用户选择按上行按钮还就是下行按钮,选择操作
3、后再由用户输入要进入得楼层,进而电梯开始运行,显示所到得每一楼层层数.2、如果就是上行,则选择输入得楼层号不能比当前楼层号小,否则应给出不合法提示.3、如果就是下行,则选择输入得楼层号不能比当前楼层号大,否则应给出不合法提示。4、电梯一旦开始运作就会始终运行,直到窗口关闭.5、电梯在经过不同楼层时,最好每个楼层得显示之间能有延迟,最终停靠得楼层得输出形式能更加醒目。如果可以,在电梯最初开始运行时,能在电梯由内部显示当前日期(提示:实现这些功能时,需要调用系统api,实现时间显示功能可以使用CDate类)。五程序清单#include
4、tream〉#include〈ctime>#includeusingnamespacestd;intn,floorNumber;classElevator{private:?intfloor;//电梯总得楼层数boolup;//就是否上行,boolbooldown;//就是否下行intcurrentFloor;//当前所在楼层为布尔类型,可取值true或falsepublic:?Elevator(intfloor);voidsetUpButton();voidsetDownButton();//按下上行按
5、钮//按下下行按钮?voidsetFloorNumber(intfloorNumber);//根据要进入得楼层电梯开始运行,并逐层显示经过得楼层?intgetCurrentFloor();//获得当前所在楼层?voidcharge();?intchoice();};Elevator::Elevator(intf){floor=f;up=false;down=false;currentFloor=1;};voidElevator::setUpButton(){if(currentFloor>floorNumber){SetCo
6、nsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED
7、FOREGROUND_GREEN);cout〈<”您不能上行!"〈〈endl〈<endl;}elseif(floorNumber>floor){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY
8、FOREGROUND_RED|FOREGROUNDGREEN);cout
9、〈〈”没这一层!太高啦!您想上天?!”<<endl<〈endl;}elseup=true;}voidElevator::setDownButton(){if(currentFloor〈floorNumber){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout〈〈"您不能下行!”<〈endl〈<endl;}elseif(floorNumber〈1){SetCons
10、oleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED
11、FOREGROUND_