2023年實驗一類與對象實驗報告_第1頁
2023年實驗一類與對象實驗報告_第2頁
2023年實驗一類與對象實驗報告_第3頁
2023年實驗一類與對象實驗報告_第4頁
2023年實驗一類與對象實驗報告_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

浙江理工大學信息學院面向?qū)ο蟪绦蛟O計實驗報告實驗名稱:類的定義與使用學時安排:3實驗類別:設計性實驗實驗規(guī)定:1人1組姓名:邵旸珂學號:8 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、實驗目的1)掌握類的概念、類的定義格式、類與結構的關系、類的成員屬性和類的封裝性;2)掌握類對象的定義;3)理解類的成員的訪問控制的含義,公有、私有和保護成員的區(qū)別;4)掌握構造函數(shù)和析構函數(shù)的含義與作用、定義方式和實現(xiàn),可以根據(jù)規(guī)定對的定義和重載構造函數(shù)??梢愿鶕?jù)給定的規(guī)定定義類并實現(xiàn)類的成員函數(shù);二、實驗原理介紹通過建立類及對象,用類的成員函數(shù)和對象訪問類的成員;運用建立類的構造函數(shù),完畢類的成員的初始化工作;三、實驗設備介紹軟件需求:windows或linux下的c++編譯器硬件需求:對于硬件方面的規(guī)定,建議配置是PentiumIII450以上的CPU解決器,64MB以上的內(nèi)存,200MB的自由硬盤空間、CD-ROM驅(qū)動器、能支持24位真彩色的顯示卡、彩色顯示器、打印機。四、實驗內(nèi)容編寫一個程序,模擬電梯的功能。功能接口涉及電梯上行按鈕、下行按鈕、樓層選擇和電梯在行駛過程中的樓層顯示。規(guī)定:1.由用戶選擇按上行按鈕還是下行按鈕,選擇操作后再由用戶輸入要進入的樓層,進而電梯開始運營,顯示所到的每一樓層層數(shù)。2.假如是上行,則選擇輸入的樓層號不能比當前樓層號小,否則應給出不合法提醒。3.假如是下行,則選擇輸入的樓層號不能比當前樓層號大,否則應給出不合法提醒。4.電梯一旦開始運作就會始終運營,直到窗口關閉。5.電梯在通過不同樓層時,最佳每個樓層的顯示之間能有延遲,最終??康臉菍拥妮敵鲂问侥芨有涯俊<偃缈梢?,在電梯最初開始運營時,能在電梯由內(nèi)部顯示當前日期(提醒:實現(xiàn)這些功能時,需要調(diào)用系統(tǒng)api,實現(xiàn)時間顯示功能可以使用CDate類)。五程序清單#include<iostream>#include<ctime>#include<windows.h>usingnamespacestd;intn,floorNumber;classElevator{privat(yī)e: intfloor;//電梯總的樓層數(shù) boolup;//是否上行,bool為布爾類型,可取值true或false booldown;//是否下行?intcurrentFloor;//當前所在樓層public: Elevator(intfloor); voidsetUpButton();//按下上行按鈕 voidsetDownButton();//按下下行按鈕 voidsetFloorNumber(intfloorNumber);//根據(jù)要進入的樓層電梯開始運營,并逐層顯示通過的樓層?intgetCurrentFloor();//獲得當前所在樓層?voidcharge();?intchoice();};Elevator::Elevat(yī)or(intf){floor=f;up=false;down=false;currentFloor=1;};voidElevator::setUpButton(){if(currentFloor>floorNumber){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|(zhì)FOREGROUND_RED|FOREGROUND_GREEN);cout<<"您不能上行!"<<endl<<endl;}elseif(floorNumber>floor){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|(zhì)FOREGROUND_RED|FOREGROUND_GREEN);cout<<"沒這一層!太高啦!您想上天?!"<<endl<<endl;}elseup=true;}voidElevator::setDownButton(){if(currentFloor<floorNumber){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|(zhì)FOREGROUND_RED|FOREGROUND_GREEN);cout<<"您不能下行!"<<endl<<endl;}elseif(floorNumber<1){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|(zhì)FOREGROUND_RED|FOREGROUND_GREEN);cout<<"沒這一層!太低啦!您想入地?!"<<endl<<endl;}elsedown=true;}voidElevator::setFloorNumber(intfloorNumber){if(up){for(;currentFloor<floorNumber;currentFloor++){cout<<"--"<<currentFloor<<"--"<<endl;Sleep(2023);}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);cout<<"第"<<currentFloor<<"層到了"<<endl<<endl;up=false;}if(down){for(;currentFloor>floorNumber;currentFloor--){cout<<"--"<<currentFloor<<"--"<<endl;Sleep(2023);}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),F(xiàn)OREGROUND_INTENSITY|(zhì)FOREGROUND_RED);cout<<"第"<<currentFloor<<"層到了"<<endl<<endl;down=false;}}intElevat(yī)or::getCurrentFloor(){returncurrentFloor;}intElevator::choice(){cin>>n;if(n==2&&getCurrentFloor()==1){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout<<"您已經(jīng)在第一層了!除非您自己打洞,不然我是不會帶你下去的?。?lt;<endl<<endl;return0;}switch(n){case1:cout<<"請輸入要進入的樓層"<<endl;cin>>floorNumber;setUpButton();setFloorNumber(floorNumber);break;case2:cout<<"請輸入要進入的樓層"<<endl;cin>>floorNumber;setDownButton();setFloorNumber(floorNumber);break;case3:return-1;default:SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout<<"只能選上升和下降!您難道還想玩電梯漂移?!"<<endl<<endl;break;}SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);cout<<"當前電梯停在"<<getCurrentFloor()<<"層"<<endl;}voidElevator::charge(){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);cout<<"---請選擇操作---"<<endl;cout<<"|1.上升|"<<endl;cout<<"|2.下降|"<<endl;cout<<"|3.退出|"<<endl;cout<<"|--------------|"<<endl;}intmain(){longa;time(&a);intfloor;cout<<"告訴我總共有幾層"<<endl;cin>>floor;Elevatorel(floor);SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);cout<<ctime(&a)<<endl;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論