實(shí)驗(yàn)一.類與對(duì)象實(shí)驗(yàn)報(bào)告_第1頁(yè)
實(shí)驗(yàn)一.類與對(duì)象實(shí)驗(yàn)報(bào)告_第2頁(yè)
實(shí)驗(yàn)一.類與對(duì)象實(shí)驗(yàn)報(bào)告_第3頁(yè)
實(shí)驗(yàn)一.類與對(duì)象實(shí)驗(yàn)報(bào)告_第4頁(yè)
實(shí)驗(yàn)一.類與對(duì)象實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、浙江理工大學(xué)信息學(xué)院面向?qū)ο蟪绦蛟O(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱: 類的定義與使用學(xué)時(shí)安排:3實(shí)驗(yàn)類別: 設(shè)計(jì)性實(shí)驗(yàn)實(shí)驗(yàn)要求:1 人1 組姓名:邵旸珂學(xué)號(hào): 2016329621068一、實(shí)驗(yàn)?zāi)康?)掌握類的概念、類的定義格式、類與結(jié)構(gòu)的關(guān)系、類的成員屬性和類的封裝性;2)掌握類對(duì)象的定義;3)理解類的成員的訪問控制的含義,公有、私有和保護(hù)成員的區(qū)別;4)掌握構(gòu)造函數(shù)和析構(gòu)函數(shù)的含義與作用、定義方式和實(shí)現(xiàn),能夠根據(jù)要求正確定義和重載構(gòu)造函數(shù)。能夠根據(jù)給定的要求定義類并實(shí)現(xiàn)類的成員函數(shù);二、實(shí)驗(yàn)原理介紹通過建立類及對(duì)象,用類的成員函數(shù)和對(duì)象訪問類的成員;利用建立類的構(gòu)造函數(shù),完成類的成員的初始化工作;三、實(shí)

2、驗(yàn)設(shè)備介紹軟件需求 : windows或 linux下的 c+編譯器硬件需求 :對(duì)于硬件方面的要求,建議配置是Pentium III450 以上的CPU處理器, 64MB以上的內(nèi)存, 200MB的自由硬盤空間、 CD-ROM驅(qū)動(dòng)器、能支持 24 位真彩色的顯示卡、彩色顯示器、打印機(jī)。四、實(shí)驗(yàn)內(nèi)容編寫一個(gè)程序,模擬電梯的功能。功能接口包括電梯上行按鈕、下行按鈕、樓層選擇和電梯在行駛過程中的樓層顯示。要求:1. 由用戶選擇按上行按鈕還是下行按鈕,選擇操作后再由用戶輸入要進(jìn)入的樓層,進(jìn)而電梯開始運(yùn)行,顯示所到的每一樓層層數(shù)。2. 如果是上行,則選擇輸入的樓層號(hào)不能比當(dāng)前樓層號(hào)小, 否則應(yīng)給出不合法提

3、示。3. 如果是下行,則選擇輸入的樓層號(hào)不能比當(dāng)前樓層號(hào)大,否則應(yīng)給出不合法提示。4. 電梯一旦開始運(yùn)作就會(huì)始終運(yùn)行,直到窗口關(guān)閉。5. 電梯在經(jīng)過不同樓層時(shí), 最好每個(gè)樓層的顯示之間能有延遲, 最終??康臉菍拥妮敵鲂问侥芨有涯?。 如果可以,在電梯最初開始運(yùn)行時(shí), 能在電梯由內(nèi)部顯示當(dāng)前日期(提示:實(shí)現(xiàn)這些功能時(shí),需要調(diào)用系統(tǒng)api ,實(shí)現(xiàn)時(shí)間顯示功能可以使用 CDate 類)。五 程序清單#include <iostream>#include <ctime>#include <windows.h>using namespace std;int n,flo

4、orNumber;class Elevatorprivate:int floor; /電梯總的樓層數(shù)bool up;/是否上行 ,bool為布爾類型,可取值true 或 falsebool down;/是否下行int currentFloor; /當(dāng)前所在樓層public:Elevator(int floor);void setUpButton();/按下上行按鈕void setDownButton(); /按下下行按鈕void setFloorNumber(int floorNumber); /根據(jù)要進(jìn)入的樓層電梯開始運(yùn)行,并逐層顯示經(jīng)過的樓層int getCurrentFloor();/獲

5、得當(dāng)前所在樓層void charge();int choice();Elevator:Elevator(int f)floor =f;up=false;down=false;currentFloor=1;void Elevator:setUpButton()if(currentFloor>floorNumber)SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout<<"您不能上行! &quo

6、t;<<endl<<endl;else if(floorNumber>floor)SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout<<"沒這一層!太高啦!您想上天?!"<<endl<<endl;else up=true;void Elevator:setDownButton()if(currentFloor<floorNum

7、ber)SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout<<"您不能下行! "<<endl<<endl;else if(floorNumber<1)SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_

8、GREEN);cout<<"沒這一層!太低啦!您想入地?!"<<endl<<endl;else down=true;void Elevator:setFloorNumber(int floorNumber)if(up)for(;currentFloor<floorNumber;currentFloor+) cout<<"-"<<currentFloor<<"-"<<endl; Sleep(2000);SetConsoleTextAttribute

9、(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED);cout<<"第"<<currentFloor<<"層到了 "<<endl<<endl;up=false;if(down)for(;currentFloor>floorNumber;currentFloor-) cout<<"-"<<currentFloor<<"-"<

10、<endl; Sleep(2000);SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED);cout<<"第"<<currentFloor<<"層到了 "<<endl<<endl;down=false;int Elevator:getCurrentFloor()return currentFloor;int Elevator:choice()cin>&

11、gt;n;if(n=2&&getCurrentFloor()=1)SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN);cout<<"您已經(jīng)在第一層了!除非您自己打洞,不然我是不會(huì)帶你下去的! "<<endl<<endl;return 0;switch(n)case1:cout<<"請(qǐng)輸入要進(jìn)入的樓層"<<endl

12、;cin>>floorNumber;setUpButton();setFloorNumber(floorNumber);break;case2:cout<<"請(qǐng)輸入要進(jìn)入的樓層"<<endl;cin>>floorNumber;setDownButton();setFloorNumber(floorNumber);break;case 3:return -1;default:SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|F

13、OREGROUND_RED|FOREGROUND_GREEN);cout<<"只能選上升和下降!您難道還想玩電梯漂移?!"<<endl<<endl; break;SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);cout<<"當(dāng)前電梯停在 "<<getCurrentFloor()<<

14、"層"<<endl;void Elevator:charge()SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);cout<<"-請(qǐng)選擇操作 -"<<endl;cout<<"|1.上升|"<<endl;cout<<"|2.下降|"<<

15、;endl;cout<<"|3.退出|"<<endl;cout<<"|-|"<<endl;int main()long a;time(&a);int floor;cout<<"告訴我總共有幾層 "<<endl;cin>>floor;Elevator el(floor);SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_IN TENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);cout<<ctime(&a)<<endl;cou

溫馨提示

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

評(píng)論

0/150

提交評(píng)論