實驗一VisualC++開發(fā)環(huán)境應(yīng)用入門_第1頁
實驗一VisualC++開發(fā)環(huán)境應(yīng)用入門_第2頁
實驗一VisualC++開發(fā)環(huán)境應(yīng)用入門_第3頁
實驗一VisualC++開發(fā)環(huán)境應(yīng)用入門_第4頁
實驗一VisualC++開發(fā)環(huán)境應(yīng)用入門_第5頁
已閱讀5頁,還剩104頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗一 Visual C+6.0開發(fā)環(huán)境應(yīng)用入門實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?了解Visual C+6.0的特點。2熟悉了解Visual C+6.0的開發(fā)環(huán)境。3學(xué)習(xí)使用Visual C+6.0編寫標(biāo)準(zhǔn)的C+控制臺應(yīng)用程序。實驗內(nèi)容實驗內(nèi)容 使用Visual C+來建立一個非圖形化的標(biāo)準(zhǔn)C+程序,編譯、運行教材中的例2-1,并分析程序的運行結(jié)果。 實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗二 C+簡單程序設(shè)計實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?會編寫簡單的C+程序。2

2、復(fù)習(xí)基本數(shù)據(jù)類型變量和常量的應(yīng)用。3復(fù)習(xí)運算符與表達(dá)式的應(yīng)用。4復(fù)習(xí)結(jié)構(gòu)化程序設(shè)計基本控制結(jié)構(gòu)的應(yīng)用。5復(fù)習(xí)自定義數(shù)據(jù)類型的應(yīng)用。6練習(xí)使用簡單的輸入輸出。7觀察頭文件的作用。8學(xué)會使用VC6.0開發(fā)環(huán)境中的debug調(diào)試功能。實驗內(nèi)容實驗內(nèi)容1輸入并運行教材C+語言程序設(shè)計中的例題27,即:用dowhile語句編程,求自然數(shù)110之和。程序正確運行之后,去掉源程序中#include語句,重新編譯,觀察會有什么問題。實驗內(nèi)容實驗內(nèi)容2將dowhile語句用for語句代替,完成相同的功能。實驗內(nèi)容實驗內(nèi)容3編程計算圖形的面積。程序可計算圓形、長方形、正方形的面積,運行時先提示用戶選擇圖形的類型,

3、然后,對圓形要求用戶輸入半徑值,對長方形要求用戶輸入長和寬的值,對正方形要求用戶輸入邊長的值,計算出面積的值后將其顯示出來。實驗內(nèi)容實驗內(nèi)容4使用debug調(diào)試功能觀察任務(wù)3程序運行中變量值的變化情況。實驗內(nèi)容實驗內(nèi)容5定義一個表示時間的結(jié)構(gòu)體,可以精確表示年、月、日、小時、分、秒;提示用戶輸入年、月、日、小時、分、秒的值,然后完整地顯示出來。(選做)實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗三 函數(shù)的應(yīng)用實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?掌握函數(shù)的定義和調(diào)用方法。2練習(xí)重載函數(shù)的使用。3練習(xí)使用系統(tǒng)函數(shù)。4學(xué)習(xí)使用

4、VC+的debug調(diào)試功能,使用step into追蹤到函數(shù)內(nèi)部。實驗內(nèi)容實驗內(nèi)容1編寫一個函數(shù)把華氏溫度轉(zhuǎn)換為攝氏溫度,轉(zhuǎn)換公式為:C=(F32)*5/9。實驗內(nèi)容實驗內(nèi)容2編寫重載函數(shù)Max1可分別求取兩個整數(shù),三個整數(shù),兩個雙精度數(shù),三個雙精度數(shù)的最大值。實驗內(nèi)容實驗內(nèi)容3使用系統(tǒng)函數(shù)pow(x,y)計算xy的值,注意包含頭文件cmath.h。(選做)實驗內(nèi)容實驗內(nèi)容4用遞歸的方法編寫函數(shù)求Fibonacci級數(shù),觀察遞歸調(diào)用的過程。(選做)實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗四 類與對象實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境

5、實驗?zāi)康膶嶒災(zāi)康?掌握類的定義和使用。2掌握類對象的聲明。3復(fù)習(xí)具有不同訪問屬性的成員的訪問方式。4觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行過程。5學(xué)習(xí)類組合使用方法。6使用VC+的debug調(diào)試功能觀察程序流程,跟蹤觀察類的構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員函數(shù)的執(zhí)行順序。實驗內(nèi)容實驗內(nèi)容1定義一個CPU類,包含等級(Rank)、頻率(frequency)、電壓(voltage)等屬性,有兩個公有成員函數(shù)run、stop。其中,rank為 枚 舉 類 型 C P U _ _ R a n k , 定 義 為 e n u m CPU_RankP1=1,P2,P3,P4,P5,P6,P7,frequency為單位是MH

6、z的整型數(shù),voltage為浮點型的電壓值。觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。實驗內(nèi)容實驗內(nèi)容2定義一個簡單的Computer類,有數(shù)據(jù)成員芯片(cpu)、內(nèi)存(ram)、光驅(qū)(cdrom)等等,有兩個公有成員函數(shù)run、stop。cpu為CPU類的一個對象,ram為RAM類的一個對象,cdrom為CDROM類的一個對象,定義并實現(xiàn)這個類。實驗內(nèi)容實驗內(nèi)容3設(shè)計一個用于人事管理的People(人員)類??紤]到通用性,這里只抽象出所有類型人員都具有的屬性:number(編號)、sex(性別)、birthday(出生日期)、id(身份證號)等等。其中“出生日期”定義一個“日期”類內(nèi)嵌子對象。用成員

7、函數(shù)實現(xiàn)對人員信息錄入和顯示。要求包括:構(gòu)造函數(shù)和析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、內(nèi)聯(lián)成員函數(shù)、類組合。(選做)實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗五 C+程序的結(jié)構(gòu)實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?觀察程序運行中變量的作用域、生存期和可見性。2學(xué)習(xí)類的靜態(tài)成員的使用。3學(xué)習(xí)多文件結(jié)構(gòu)在C+程序中的使用。實驗內(nèi)容實驗內(nèi)容1運行下面的程序,觀察變量X、Y的值。實驗內(nèi)容實驗內(nèi)容/lab5_1.cpp#include void fnl();int x=1,y=2;int main()cout”Begin”endl;cout”

8、x=”xendl;cout”y=”yendl;cout”Evaluate x and y in main()”endl;int x=10,y=20;cout”x=”xendl;cout”y=”yendl;cout”Step into fnl()”endl;fnl();cout”Back in main”endl;cout”x=”xendl;cout”y=”yendl;return 0;void fnl()int y=200;cout”x=”xendl;cout”y=”yendl;實驗內(nèi)容實驗內(nèi)容2實現(xiàn)客戶機(CLIENT)類。定義字符型靜態(tài)數(shù)據(jù)成員ServerName,保存其服務(wù)器名稱;整型靜

9、態(tài)數(shù)據(jù)成員ClientNum,記錄已定義的 客 戶 數(shù) 量 ; 定 義 靜 態(tài) 函 數(shù)ChangeServerName()改變服務(wù)器名稱。在頭文件client.h中定義類,在文件client.cpp中實現(xiàn),在文件test.cpp 中測試這個類,觀察相應(yīng)的成員變量取值的變化情況。實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗六 數(shù)組、指針與字符串實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?學(xué)習(xí)使用數(shù)組。2學(xué)習(xí)字符串?dāng)?shù)據(jù)的組織和處理。3學(xué)習(xí)標(biāo)準(zhǔn)C+庫的使用。4掌握指針的使用方法。5練習(xí)通過debug觀察指針的內(nèi)容及其所指的對象的內(nèi)容。

10、6練習(xí)通過動態(tài)內(nèi)存分配實現(xiàn)動態(tài)數(shù)組,并體會指針在其中的作用。7分別使用字符數(shù)組和標(biāo)準(zhǔn)C+庫練習(xí)處理字符串的方法。實驗內(nèi)容實驗內(nèi)容1編寫并測試33矩陣轉(zhuǎn)置函數(shù),使用數(shù)組保存33矩陣。實驗內(nèi)容實驗內(nèi)容2使用動態(tài)內(nèi)存分配生成動態(tài)數(shù)組來重新完成上題,使用指針實現(xiàn)函數(shù)的功能。實驗內(nèi)容實驗內(nèi)容3編程實現(xiàn)兩字符串的連接。要求使用字符數(shù)組保存字符串,不要使用系統(tǒng)函數(shù)。實驗內(nèi)容實驗內(nèi)容4使用string類定義字符串對象,重新實現(xiàn)上一小題。實驗內(nèi)容實驗內(nèi)容5定義一個Employee類,其中包括姓名、街道 地 址 、 城 市 和 郵 編 等 屬 性 , 以 及change_name()和display()等函數(shù)。D

11、isplay()顯示姓名、街道地址、城市和郵編等屬性,change_name()改變對象的姓名屬性。實現(xiàn)并測試這個類。(選做)實驗內(nèi)容實驗內(nèi)容6定義包含5個元素的對象數(shù)組,每個元素都是Employee類型的對象。(選做)實驗內(nèi)容實驗內(nèi)容7修改實驗4中的選做實驗中的people(人員)類。具有的屬性如下:姓名char name11、編號char number7、性別char sex3、生日birthday、身份證號char id16。其中“出生日期”定義為一個“日期”類內(nèi)嵌對象。用成員函數(shù)實現(xiàn)對人員信息的錄入和顯示。要求包括:構(gòu)造函數(shù)和析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、內(nèi)嵌構(gòu)造函數(shù)、內(nèi)聯(lián)成員函數(shù)、類組合。

12、在測試程序中定義people類的對象數(shù)組,錄入數(shù)據(jù)并顯示。(選做)實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗七 繼承與派生實驗實驗?zāi)康膶嶒災(zāi)康念A(yù)習(xí)內(nèi)容預(yù)習(xí)內(nèi)容實驗內(nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?學(xué)習(xí)定義和使用類的繼承關(guān)系,定義派生類。2熟悉不同繼承方式下對基類成員的訪問控制。3學(xué)習(xí)利用虛基類解決二義性問題。實驗內(nèi)容實驗內(nèi)容1class A public: int x;class B:public A ;void main()A a;B b;coutsize of a=sizeof(a)endl;coutsize of b=sizeof(b

13、)endl;問題:(1)分析以上程序,該程序的輸出結(jié)果是:(2)解釋產(chǎn)生相應(yīng)輸出結(jié)果的原因,原因是:(3)解釋加粗部分的語法含義:實驗內(nèi)容實驗內(nèi)容2class Bint i;protected:int j;public:p()coutout in Bendl;class C :private Bpublic:p1()p();j=2; /correct,why?/i=1; /error. why?;實驗內(nèi)容實驗內(nèi)容void main()C c;c.p1();/c.p(); /error, why?問題:(1)運行以上程序(2)取消程序的注釋語句,再次運行程序,如果有錯,分析出錯的原因(3)想一想

14、都有哪些繼承方式,他們之間有什么區(qū)別?實驗內(nèi)容實驗內(nèi)容3寫一個演示虛基類的例子程序。如不會寫,可參考以下程序:#include using namespace std;class B public: int b; B(int i=0)b=i;coutConstractor Bendl; 實驗內(nèi)容實驗內(nèi)容class B1 : public B public: int b1; B1()coutConstractor B1endl;class B2 : public B public: int b2; B2()coutConstractor B2endl;實驗內(nèi)容實驗內(nèi)容class C : publ

15、ic B1,public B2 public: int d; C(int x):B(x) ;void main()C c1(7);c1.b=9; c1.B1:b=9; 實驗內(nèi)容實驗內(nèi)容思考:(1)什么叫虛基類,虛基類的作用是什么?(2)不用虛基類,重新運行以上程序,分析運行的結(jié)果并解釋。實驗內(nèi)容實驗內(nèi)容4定義一個基類Animal,有私有整型成員變量age,構(gòu)造其派生類dog,在其成員函數(shù)SetAge(int n)中直接給age賦值,看看會有什么問題,把age改為公有成員變量,還會有問題嗎?編程試試看。實驗內(nèi)容實驗內(nèi)容5定義一個基類BasClass,有整型成員變量Number,構(gòu)造其派生類Der

16、ivedClass,觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行情況。實驗內(nèi)容實驗內(nèi)容6定義一個車(vehicle)基類,具有MaxSpeed、Weight等成員變量,Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類,汽車(motorcar)類。自行車(bicycle)類有高度(Height)等屬性,汽車(motorcycle)類有座位數(shù)(SeatNum)等屬性。從bicycle和Motorcar派生出摩托車(motorcycle)類,在繼承過程中,注意把vehicle設(shè)置為虛基類。如果不把vehicle 設(shè)置為虛基類,會有什么問?編程試試看。實驗內(nèi)容實驗內(nèi)容7從實驗6中的people (人員

17、)類派生出student( 學(xué) 生 ) 類 , 添 加 屬 性 : 職 務(wù) c h a r principalship11、部門char department21。從student類中派生出graduate(研究生)類,添加屬性:專業(yè)char subject21、導(dǎo)師teacher adviser;從graduate 類派生出其TA(助教)類,注意虛基類的使用。重載相應(yīng)的成員函數(shù),測試這些類。(選做)實驗內(nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗八 多態(tài)性實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?掌握運算符重載的

18、方法。2學(xué)習(xí)使用虛函數(shù)實現(xiàn)動態(tài)多態(tài)性。實驗內(nèi)容實驗內(nèi)容1. #includeusing namespace std;class complex/復(fù)數(shù)類聲明public: /外部接口complex(double r=0.0,double i=0.0)real=r;imag=i;/構(gòu)造函數(shù)complex operator + (complex c2);/運算符+重載成員函數(shù),注意語法格式complex operator - (complex c2);/運算符-重載成員函數(shù)void display();/輸出復(fù)數(shù)private:/私有數(shù)據(jù)成員double real; /復(fù)數(shù)實部double imag

19、; /復(fù)數(shù)虛部;complex complex:operator +(complex c2) /重載運算符函數(shù)實現(xiàn)return complex(real+c2.real, imag+c2.imag); /創(chuàng)建一個臨時無名對象作為返回值實驗內(nèi)容實驗內(nèi)容complex complex:operator -(complex c2)/重載運算符函數(shù)實現(xiàn)return complex(real-c2.real, imag-c2.imag); /創(chuàng)建一個臨時無名對象作為返回值void complex:display()cout(real,imag)endl;void main()/主函數(shù)complex c1

20、(5,4),c2(2,10),c3;/聲明復(fù)數(shù)類的對象coutc1=;c1.display();coutc2=;c2.display();c3=c1-c2;/使用重載運算符完成復(fù)數(shù)減法coutc3=c1-c2=;c3.display();c3=c1+c2;/使用重載運算符完成復(fù)數(shù)加法coutc3=c1+c2=;c3.display();實驗內(nèi)容實驗內(nèi)容問題:(1)分析以上程序,該程序的輸出結(jié)果是:(2)解釋加粗部分的語法含義:(3)體會類用類的成員函數(shù)重載運算符的實質(zhì)?體會運算符重載所帶來的優(yōu)點.實驗內(nèi)容實驗內(nèi)容2. #include/using namespace std; /注意這個錯誤,

21、vcs bugclass complex/復(fù)數(shù)類聲明public:/外部接口complex(double r=0.0,double i=0.0)real=r;imag=i; /構(gòu)造函數(shù)friend complex operator + (complex c1,complex c2); /運算符+重載友元函數(shù),注意新的語法friend complex operator - (complex c1,complex c2); /運算符-重載友元函數(shù)void display();/顯示復(fù)數(shù)的值private: /私有數(shù)據(jù)成員double real;double imag;/顯示函數(shù)實現(xiàn)void com

22、plex:display()cout(real,imag)endl;實驗內(nèi)容實驗內(nèi)容complex operator +(complex c1,complex c2)/運算符重載友元函數(shù)實現(xiàn)return complex(c2.real+c1.real,c2.imag+c1.imag);complex operator -(complex c1,complex c2)/運算符重載友元函數(shù)實現(xiàn)return complex(c1.real-c2.real,c1.imag-c2.imag);void main()/主函數(shù)complex c1(5,4),c2(2,10),c3;coutc1=;c1.di

23、splay();coutc2=;c2.display();c3=c1-c2;/使用重載運算符/ 相當(dāng)于/ c3=operator -(c1,c2);coutc3=c1-c2=;c3.display();c3=c1+c2;/使用重載運算符/ 相當(dāng)于/ c3=operator +(c1,c2);coutc3=c1+c2=;c3.display();實驗內(nèi)容實驗內(nèi)容問題:(1)運行以上程序(2)解釋加粗部分的語法含義:(3)體會類用友元函數(shù)重載運算符的實質(zhì)?體會運算符重載所帶來的優(yōu)點.實驗內(nèi)容實驗內(nèi)容2#include/using namespace std; /注意這個錯誤,vcs bugclas

24、s complex/復(fù)數(shù)類聲明public: /外部接口complex(double r=0.0,double i=0.0)real=r;imag=i;/構(gòu)造函數(shù)friend complex operator + (complex c1,complex c2);/運算符+重載友元函數(shù),注意新的語法friend complex operator - (complex c1,complex c2);/運算符-重載友元函數(shù)void display();/顯示復(fù)數(shù)的值private:/私有數(shù)據(jù)成員double real;double imag;/顯示函數(shù)實現(xiàn)實驗內(nèi)容實驗內(nèi)容void complex:d

25、isplay()cout(real,imag)endl;complex operator +(complex c1,complex c2) /運算符重載友元函數(shù)實現(xiàn)return complex(c2.real+c1.real,c2.imag+c1.imag);complex operator -(complex c1,complex c2) /運算符重載友元函數(shù)實現(xiàn)return complex(c1.real-c2.real,c1.imag-c2.imag);實驗內(nèi)容實驗內(nèi)容void main()/主函數(shù)complex c1(5,4),c2(2,10),c3;coutc1=;c1.displa

26、y();coutc2=;c2.display();c3=c1-c2;/使用重載運算符/ 相當(dāng)于/ c3=operator -(c1,c2);coutc3=c1-c2=;c3.display();c3=c1+c2;/使用重載運算符/ 相當(dāng)于/ c3=operator +(c1,c2);coutc3=c1+c2=;c3.display();實驗內(nèi)容實驗內(nèi)容問題:(1)運行以上程序(2)解釋加粗部分的語法含義:(3)體會類用友元函數(shù)重載運算符的實質(zhì)?體會運算符重載所帶來的優(yōu)點.實驗內(nèi)容實驗內(nèi)容3寫一個程序演示動態(tài)綁定。如不會寫,可參考以下程序:#include using namespace std

27、;class B0/抽象基類B0聲明public:/外部接口virtual void display()=0; /純虛函數(shù)成員;class B1: public B0/公有派生public:void display()coutB1:display()endl;/虛成員函數(shù); 實驗內(nèi)容實驗內(nèi)容class D1: public B1/公有派生public:void display()coutD1:display()display();void main()/主函數(shù)B0 *p;/聲明抽象基類指針B1 b1;/聲明派生類對象D1 d1;/聲明派生類對象p=&b1;fun(p);/調(diào)用派生類B1

28、函數(shù)成員p=&d1;fun(p);/調(diào)用派生類D1函數(shù)成員實驗內(nèi)容實驗內(nèi)容思考:(1)動態(tài)綁定必須依靠 來實現(xiàn)。(2)不用動態(tài)綁定,運行程序,比較結(jié)果?(3)體會動態(tài)綁定技術(shù)所帶來的優(yōu)點。實驗內(nèi)容實驗內(nèi)容4寫一個程序演示抽象類如不會寫,可參考以下程序:#include using namespace std;class B0/抽象基類B0聲明public:/外部接口virtual void display()=0; /純虛函數(shù)成員;class B1: public B0/公有派生public:void display()coutB1:display()endl;/虛成員函數(shù);實驗內(nèi)容實

29、驗內(nèi)容class D1: public B1/公有派生public:void display()coutD1:display()display();void main()/主函數(shù)B0 *p;/聲明抽象基類指針B1 b1;/聲明派生類對象D1 d1;/聲明派生類對象p=&b1;fun(p);/調(diào)用派生類B1函數(shù)成員p=&d1;fun(p);/調(diào)用派生類D1函數(shù)成員/B0 b; error,why?實驗內(nèi)容實驗內(nèi)容問題:(1)抽象類是指 。(2)解釋注釋語句出錯的原因?實驗內(nèi)容實驗內(nèi)容5定義Point類,有坐標(biāo)_x,_y兩個成員變量;對Point類重載“+”(自增)、“-”(自減)

30、運算符,實現(xiàn)對坐標(biāo)的改變。實驗內(nèi)容實驗內(nèi)容6定義一個車(vehicle)基類,有Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類、汽車(motorcar)類,從bicycle到motorcar派生出摩托車(motorcycle)類,它們都有Run、Stop等成員函數(shù)。觀察虛函數(shù)的作用。實驗內(nèi)容實驗內(nèi)容7對實驗六中的people類重載“= =”運算符和“=”運算符,“= =”運算符判斷兩個people類對象的id屬性是否相等;“=”運算符實現(xiàn)people類對象的賦值操作。(選做)實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗九 群體類和群體數(shù)據(jù)組織實驗(選做

31、)實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?了解鏈表類的定義與實現(xiàn),學(xué)習(xí)其使用方法。2了解棧類定義與實現(xiàn),學(xué)習(xí)其使用方法。3了解隊列類的定義與實現(xiàn),學(xué)習(xí)其使用方法。4了解C+標(biāo)準(zhǔn)模板庫STL的使用方法。實驗內(nèi)容實驗內(nèi)容1使用重載函數(shù)模板重新實現(xiàn)實驗三中2小題中的函數(shù)Max1。實驗內(nèi)容實驗內(nèi)容2編寫程序link.h,實現(xiàn)教材中例9-6的鏈表類。在測試lab9_1.cpp中定義兩個整型鏈表A和B,分別插入5個元素,然后把B中的元素加入A的尾部。實驗內(nèi)容實驗內(nèi)容3編寫程序queue.h,用鏈表實現(xiàn)隊列(或棧)類。在測試程序lab9_1.cpp中定義一個整型隊列

32、(或棧)對象,插入5個整數(shù),壓入隊列(或棧),再依次取出并顯示出來。實驗內(nèi)容實驗內(nèi)容4將直接插入排序、直接選擇程序、冒泡排序、順序查找函數(shù)封裝到教材中第9章的數(shù)組類模板中,作為成員函數(shù)。實現(xiàn)并測試這個類。(選做)實驗內(nèi)容實驗內(nèi)容5定義一個對people類對象數(shù)組按編號排序的函數(shù),一個按編號查找people對象的函數(shù)。在測試程序中使用前面實驗得到的結(jié)果定義教師數(shù)組和學(xué)生數(shù)組,分別對教師數(shù)組和學(xué)生數(shù)組進(jìn)行排序和查找。(選做)實驗內(nèi)容實驗內(nèi)容6定義course(課程)類,有屬性:課程名char name21、成績short score;在實驗7中的student類中增加屬性:所修課程courses,

33、為課程類對象。在測試程序測試這個類。學(xué)生類之間的關(guān)系如圖9-1所示。(選做)圖9-1 實驗任務(wù)4的類圖實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗十 泛型程序設(shè)計與C+標(biāo)準(zhǔn)模板庫實驗(選做)實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?掌握對數(shù)組元素排序的方法。2掌握對數(shù)組元素查找的方法。3應(yīng)用標(biāo)準(zhǔn)C+庫(STL)實現(xiàn)查找與排序。實驗內(nèi)容實驗內(nèi)容1在C+標(biāo)準(zhǔn)模板庫中,隊列類(queue)的成員函數(shù)queue:push()在隊列的一端添加元素,queue:pop()從非空的隊列 中刪除最后一個元素,queue:empty()判斷隊列是否

34、為空,queue:back()返回非空隊列的最后一個元素,queue:front()返回非空隊列的第一個元素,queue:size()返回隊列中元素的個數(shù),請構(gòu)造一個int類型的隊列,對這個隊列應(yīng)用上述幾個函數(shù),體會隊列這種數(shù)據(jù)結(jié)構(gòu)的特點和其成員函數(shù)的用法。實驗內(nèi)容實驗內(nèi)容2對于一個包含特定個數(shù)整型數(shù)據(jù)的數(shù)組A,對于從鍵盤輸入的任意數(shù),使用C+標(biāo)準(zhǔn)模板庫中的find()查找在A 中的位置,使用sort()來對數(shù)組進(jìn)行升序或降序排列,排序前和排序后的結(jié)果使用copy()輸出。實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境(1)PC機(2)VC 6.0 實驗十一 流內(nèi)庫與輸入、輸出實驗實驗?zāi)康膶嶒災(zāi)康膶嶒瀮?nèi)容實

35、驗內(nèi)容實驗的軟硬件環(huán)境實驗的軟硬件環(huán)境實驗?zāi)康膶嶒災(zāi)康?熟悉流類庫中常用的類及其成員函數(shù)的用法。2學(xué)習(xí)標(biāo)準(zhǔn)輸入輸出及格式控制。3學(xué)習(xí)對文件的應(yīng)用方法(二進(jìn)制文件、文本文件)。實驗內(nèi)容實驗內(nèi)容1觀察以下程序的輸出,注意對輸出格式的控制方法/lab11_1.cpp#includeUsing namespace std;#define D(a)T#aendl;aOfstream T(“output.out”);Void main()D(int i=53;)D(float f=4700113.141593;)Char*s=“Is there any more?”;D(T.setf(ios:unitbu

36、f);) 實驗內(nèi)容實驗內(nèi)容D(T.setf(ios:showbase);)D(T.setf(ios:uppercase);)D(T.setf(ios:showpos);)D(Tiendl;)D(T.setf(ios:hex,ios:basefield);)D(Tiendl;)D(T.unsetf(ios:uppercase);)D(T.setf(ios:oct,ios:basefield);)D(Tiendl;)D(T.setf(ios:showbase);)D(T.setf(ios:dec,ios:basefield);)D(T.setf(ios:left,ios:adjustfield);)D(T.fill(0);)D(T“fill char:”T.fill()endl;)D(T.windrh(8

溫馨提示

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

評論

0/150

提交評論