实验一类及对象实验报告.docx
- 文档编号:7216079
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:9
- 大小:61.58KB
实验一类及对象实验报告.docx
《实验一类及对象实验报告.docx》由会员分享,可在线阅读,更多相关《实验一类及对象实验报告.docx(9页珍藏版)》请在冰豆网上搜索。
实验一类及对象实验报告
浙江理工大学信息学院
面向对象程序设计实验报告
实验名称:
类的定义与使用学时安排:
3
实验类别:
设计性实验实验要求:
1人1组
姓名:
邵旸珂学号:
2016329621068
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
一、实验目的
1)掌握类的概念、类的定义格式、类与结构的关系、类的成员属性和类的封装性;
2)掌握类对象的定义;
3)理解类的成员的访问控制的含义,公有、私有和保护成员的区别;
4)掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数。
能够根据给定的要求定义类并实现类的成员函数;
二、实验原理介绍
通过建立类及对象,用类的成员函数和对象访问类的成员;
利用建立类的构造函数,完成类的成员的初始化工作;
三、实验设备介绍
软件需求:
windows或linux下的c++编译器
硬件需求:
对于硬件方面的要求,建议配置是PentiumIII450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
四、实验内容
编写一个程序,模拟电梯的功能。
功能接口包括电梯上行按钮、下行按钮、楼层选择和电梯在行驶过程中的楼层显示。
要求:
1.由用户选择按上行按钮还是下行按钮,选择操作后再由用户输入要进入的楼层,进而电梯开始运行,显示所到的每一楼层层数。
2.如果是上行,则选择输入的楼层号不能比当前楼层号小,否则应给出不合法提示。
3.如果是下行,则选择输入的楼层号不能比当前楼层号大,否则应给出不合法提示。
4.电梯一旦开始运作就会始终运行,直到窗口关闭。
5.电梯在经过不同楼层时,最好每个楼层的显示之间能有延迟,最终停靠的楼层的输出形式能更加醒目。
如果可以,在电梯最初开始运行时,能在电梯由内部显示当前日期(提示:
实现这些功能时,需要调用系统api,实现时间显示功能可以使用CDate类)。
五程序清单
#include
#include
#include
usingnamespacestd;
intn,floorNumber;
classElevator
{
private:
intfloor;//电梯总的楼层数
boolup;//是否上行,bool为布尔类型,可取值true或false
booldown;//是否下行
intcurrentFloor;//当前所在楼层
public:
Elevator(intfloor);
voidsetUpButton();//按下上行按钮
voidsetDownButton();//按下下行按钮
voidsetFloorNumber(intfloorNumber);//根据要进入的楼层电梯开始运行,并逐层显示经过的楼层
intgetCurrentFloor();//获得当前所在楼层
voidcharge();
intchoice();
};
Elevator:
:
Elevator(intf)
{
floor=f;
up=false;
down=false;
currentFloor=1;
};
voidElevator:
:
setUpButton()
{
if(currentFloor>floorNumber)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
cout<<"您不能上行!
"< } elseif(floorNumber>floor) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); cout<<"没这一层! 太高啦! 您想上天? ! "< } elseup=true; } voidElevator: : setDownButton() { if(currentFloor { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); cout<<"您不能下行! "< } elseif(floorNumber<1) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); cout<<"没这一层! 太低啦! 您想入地? ! "< } elsedown=true; } voidElevator: : setFloorNumber(intfloorNumber) { if(up) { for(;currentFloor {cout<<"--"< Sleep(2000);} SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED); cout<<"第"< up=false; } if(down) { for(;currentFloor>floorNumber;currentFloor--) {cout<<"--"< Sleep(2000);} SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED); cout<<"第"< down=false; } } intElevator: : getCurrentFloor() { returncurrentFloor; } intElevator: : choice() { cin>>n; if(n==2&&getCurrentFloor()==1) { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); cout<<"您已经在第一层了! 除非您自己打洞,不然我是不会带你下去的! "< } switch(n) { case1: cout<<"请输入要进入的楼层"< case2: cout<<"请输入要进入的楼层"< case3: return-1; default: SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); cout<<"只能选上升和下降! 您难道还想玩电梯漂移? ! "< } SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); cout<<"当前电梯停在"< } voidElevator: : charge() { SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); cout<<"---请选择操作---"< cout<<"|1.上升|"< cout<<"|2.下降|"< cout<<"|3.退出|"< cout<<"|--------------|"< } intmain() { longa; time(&a); intfloor; cout<<"告诉我总共有几层"< cin>>floor; Elevatorel(floor); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); cout< cout<<"本电梯共"< while (1) { inti=0; el.charge(); i=el.choice(); if(i==-1)break; } return0; } 六运行结果 七实验心得 实验很有趣,让我初步体会了程序猿的感受。 通过这个程序,基本掌握了类与对象的知识,还接触了控制台字体颜色改变,和输出系统时间。 收获颇丰。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 一类 对象 报告