




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選文檔課 程 實 驗 報 告課程名稱:面向對象程序設計院 系 : 專業班級 : 學 號 : 姓 名 : 指導教師 : 目 錄實驗一.面向過程的整型棧編程11.需求分析11.1題目要求11.2需求分析12.系統設計22.1概要設計22.2詳細設計34.軟件測試45.特點與不足45.1技術特點45.2不足和改進的建議56.過程和體會56.1遇到的主要問題和解決方法56.2課程設計的體會57.源碼和說明57.1文件清單及其功能說明57.2用戶使用說明書57.3源代碼5實驗二.面向對象的整型棧編程121.需求分析121.1題目要求121.2需求分析122.系統設計132.1概要設計132.2詳細設計
2、133.軟件開發144.軟件測試145.特點與不足145.1技術特點145.2不足和改進的建議156.過程和體會156.1遇到的主要問題和解決方法156.2課程設計的體會157.源碼和說明157.1文件清單及其功能說明157.2用戶使用說明書157.3源代碼15實驗三.基于算符重載的整型棧編程191.需求分析191.1題目要求191.2需求分析192.系統設計202.1概要設計202.2詳細設計203.軟件開發204.軟件測試205.特點與不足215.1技術特點215.2不足和改進的建議216.過程和體會216.1遇到的主要問題和解決方法216.2課程設計的體會217.源碼和說明217.1文件
3、清單及其功能說明217.2用戶使用說明書217.3源代碼21實驗四. 面向對象的整型隊列編程251.需求分析251.1題目要求251.2需求分析252.系統設計263.軟件開發264.軟件測試265.特點與不足265.1技術特點265.2不足和改進的建議266.過程和體會266.1遇到的主要問題和解決方法266.2課程設計的體會277.源碼和說明277.1文件清單及其功能說明277.2用戶使用說明書277.3源代碼27實驗五. 基于組合的整型隊列編程311.需求分析311.1題目要求311.2需求分析312.系統設計313.軟件開發324.軟件測試325.特點與不足325.1技術特點325.2
4、不足和改進的建議326.過程和體會326.1遇到的主要問題和解決方法326.2課程設計的體會327.源碼和說明337.1文件清單及其功能說明337.2用戶使用說明書337.3源代碼33實驗六. 基于繼承的整型隊列編程371.需求分析371.1題目要求371.2需求分析382.系統設計383.軟件開發384.軟件測試385.特點與不足385.1技術特點385.2不足和改進的建議386.過程和體會396.1遇到的主要問題和解決方法396.2課程設計的體會397.源碼和說明397.1文件清單及其功能說明397.2用戶使用說明書397.3源代碼39精選文檔實驗一.面向過程的整型棧編程1.需求分析1.1
5、題目要求整型棧是一種先進后出的存儲結構,對其進行的操作通常包括判斷棧是否為空、向棧頂添加一個整型元素、出棧等。整型棧類型及其操作函數采用非面向對象的純C語言定義,請將完成上述操作的所有函數采用面向過程的方法編程, 然后寫一個main函數對棧的所有操作函數進行測試。struct STACK int *elems;/申請內存用于存放棧的元素 int max;/棧能存放的最大元素個數 int pos;/棧實際已有元素個數,棧空時pos=0;void initSTACK(STACK *const p, int m);/初始化p指空棧:可存m個元素void initSTACK(STACK *const
6、p, const STACK&s); /用s初始化p指空棧int size (const STACK *const p);/返回p指的棧的最大元素個數maxint howMany (const STACK *const p);/返回p指的棧的實際元素個數posint getelem (const STACK *const p, int x);/取下標x處的棧元素STACK *const push(STACK *const p, int e); /將e入棧,并返回pSTACK *const pop(STACK *const p, int &e);/出棧到e,并返回pSTACK *
7、const assign(STACK*const p, const STACK&s);/賦給p指棧,返回pvoid print(const STACK*const p);/打印p指向的棧元素void destroySTACK(STACK*const p);/銷毀p指向的棧,釋放1.2需求分析本實驗需要實現棧的功能的操作,如元素的進棧,連續進棧,出棧和連續出棧,所以需要設計兩個棧,在完成初始化后直接在程序里給定棧內元素。2.系統設計2.1概要設計函數結構圖見圖1.1圖1.1總體流程圖見圖1.2圖1.22.2詳細設計void initSTACK(STACK *const p, int m)
8、入口參數:int m出口參數:無功能:初始化棧,可存m個元素void initSTACK(STACK *const p, const STACK&s)入口參數:const STACK&s出口參數:無功能:用s初始化p指空棧int size (const STACK *const p) 入口參數:無出口參數:int max功能:返回p指的棧的最大元素個數maxint howMany (const STACK *const p) 入口參數:無出口參數:int pos功能:返回p指的棧的實際元素個數posint getelem (const STACK *const p, int x
9、) 入口參數:int x出口參數:elemm功能:取下標x處的棧元素STACK *const push(STACK *const p, int e) 入口參數:int e出口參數:(*this)功能:將e入棧,并返回pSTACK *const pop(STACK *const p, int &e) 入口參數:int &e出口參數:(*this)功能:出棧到e,并返回pSTACK *const assign(STACK*const p, const STACK&s) 入口參數:STACK&s出口參數:(*this)功能:賦s給p指棧,返回pvoid print(c
10、onst STACK*const p) 入口參數:無出口參數:無功能:打印p指向的棧元素void destroySTACK(STACK*const p) 入口參數:出口參數:功能:銷毀p指向的棧,釋放3.軟件開發在Codeblocks編譯環境下,使用C+語言編寫。4.軟件測試測試結果見圖1.3圖1.35.特點與不足5.1技術特點完成了實驗的所有要求,沒有錯誤的地方。5.2不足和改進的建議沒有做人機交互界面,無法自由選擇入棧的數據;同時注釋較少,對于程序不了解的人可能需要花費更多時間去了解。6.過程和體會6.1遇到的主要問題和解決方法輸出結果數字與預計不同,檢查后發現原因是變量初始值未設置。6.
11、2課程設計的體會本次實驗主要還是通過回顧C語言中棧的知識完成在C+上的編程,所以總體過程沒有出現太大的問題;同時也對const變量有了進一步的認識。7.源碼和說明7.1文件清單及其功能說明experiment1.cpp源碼experiment1.exe可執行文件。7.2用戶使用說明書experiment1.cpp是程序的源碼,可通過修改其中main函數中的變量來測試各個函數。7.3源代碼#include<stdio.h>#include<malloc.h>#include<stdlib.h>struct STACK int *elems;/申請內存用于存放棧
12、的元素 int max; /棧能存放的最大元素個數 int pos; /棧實際已有元素個數,棧空時pos=0;void initSTACK(STACK *const p, int m);/初始化p指向的棧:最多m個元素void initSTACK(STACK *const p, const STACK&s); /用棧s初始化p指向的棧int size (const STACK *const p);/返回p指向的棧的最大元素個數maxint howMany (const STACK *const p);/返回p指向的棧的實際元素個數posint getelem (const STACK
13、*const p, int x);/取下標x處的棧元素STACK *const push(STACK *const p, int e); /將e入棧,并返回pSTACK *const pop(STACK *const p, int &e); /出棧到e,并返回pSTACK *const assign(STACK*const p, const STACK&s); /賦s給p指的棧,并返回pvoid print(const STACK*const p);/打印p指向的棧void destroySTACK(STACK*const p);/銷毀p指向的棧int main(int arg
14、c, char* argv) STACK *s1 = (STACK *)malloc(sizeof(STACK); STACK *s2 = (STACK *)malloc(sizeof(STACK); initSTACK(s1,10); push(s1,1); push(s1,2); push(push(s1,3),4); initSTACK(s2,*s1); print(s2); printf("棧s1:n"); print(s1); /assign(s2,*s1); printf("棧s2:n"); print(s2); int a,b,c; a =
15、 size(s1); printf("棧的最大元素個數是 %dn",a); b = howMany(s1); printf("棧的實際元素個數是 %dn",b); c = getelem(s1,3); printf("3處棧元素是是%dn",c); int x,y,z; pop(s2,x); pop(pop(s2,y),z); printf("x= %d, y= %d, z= %d n",x,y,z); destroySTACK(s2); destroySTACK(s1); getchar(); return 0;
16、void initSTACK(STACK *const p, int m)/初始化p指向的棧:最多m個元素 p->elems = (int*)malloc(m*sizeof(int*); if(!p->elems) return; p->pos = 0; p->max = m; int i; for(i=0;i<(p->max);i+) p->elemsi = 0;void initSTACK(STACK *const p, const STACK&s) /用棧s初始化p指向的棧 p->elems = (int*)malloc(s.max
17、)*sizeof(int); p->pos = s.pos; p->max = s.max; int i; for(i=0;i<(s.pos);i+) p->elemsi=s.elemsi; printf("%dn",p->elemsi); int size (const STACK *const p)/返回p指向的棧的最大元素個數max return p->max;int howMany (const STACK *const p)/返回p指向的棧的實際元素個數pos return p->pos;int getelem (cons
18、t STACK *const p, int x)/取下標x處的棧元素 if(p=NULL) return NULL; else if(x>(p->pos) printf("不存在元素n"); else return p->elemsx; STACK *const push(STACK *const p, int e) /將e入棧,并返回p if(p=NULL) return NULL; else if(p->pos)<=(p->max) p->elemsp->pos=e; p->pos+; return p; else
19、printf("棧滿n"); STACK *const pop(STACK *const p, int &e) /出棧到e,并返回p if(p=NULL) return NULL; else if(p->pos)=0) printf("棧為空n"); else e=p->elems(p->pos)-1; (p->pos)-; return p; STACK *const assign(STACK*const p, const STACK&s) /賦s給p指的棧,并返回p if(p=NULL | &s=NUL
20、L) return NULL; else free(p->elems); /free(p); /STACK *p = (STACK *)malloc(sizeof(STACK); initSTACK(p,s); return p; void print(const STACK*const p)/打印p指向的棧 int i; if(p = NULL) return; else if(p->pos = 0) printf("棧為空n"); else for(i=0;i<(p->pos);i+) printf("%d ",p->e
21、lemsi); printf("n"); void destroySTACK(STACK*const p)/銷毀p指向的棧 free(p->elems); free(p); printf("棧已銷毀n");實驗二.面向對象的整型棧編程1.需求分析1.1題目要求整型棧是一種先進后出的存儲結構,對其進行的操作通常包括判斷棧是否為空、向棧頂添加一個整型元素、出棧等。整型棧類型及其操作函數采用面向對象的C+語言定義,請將完成上述操作的所有函數采用C+編程, 然后寫一個main函數對棧的所有操作函數進行測試。class STACK int *const el
22、ems;/申請內存用于存放棧的元素 const int max;/棧能存放的最大元素個數 int pos;/棧實際已有元素個數,棧空時pos=0;public:STACK(int m);/初始化棧:最多m個元素STACK(const STACK&s); /用棧s拷貝初始化棧int size ( ) const;/返回棧的最大元素個數maxint howMany ( ) const;/返回棧的實際元素個數posint getelem (int x) const;/取下標x處的棧元素STACK& push(int e); /將e入棧,并返回棧STACK& pop(int &
23、amp;e); /出棧到e,并返回棧STACK& assign(const STACK&s); /賦s給棧,并返回被賦值的棧void print( ) const;/打印棧STACK( );/銷毀棧;1.2需求分析采用面向對象的C+語言定義整型棧,對其進行的操作通常包括判斷棧是否為空、向棧頂添加一個整型元素、出棧等。2.系統設計2.1概要設計首先需要定義一個類來實現棧,然后依次實現棧的各個功能,在主函數中給定一個棧然后,然后通過函數調用實現棧的功能。2.2詳細設計STACK(int m) 功能:初始化棧:最多m個元素返回值:無STACK(const STACK&s) 功
24、能:用棧s拷貝初始化棧返回值:無int size ( ) const功能:返回棧的最大元素個數max返回值:最大元素個數maxint howMany ( ) const功能:返回棧的實際元素個數pos返回值:元素數目posint getelem (int x) const 功能:取下標x處的棧元素返回值:下標為x的元素STACK& push(int e)功能:將e入棧返回值:棧的引用STACK& pop(int &e)功能:出棧到e,并返回棧返回值:棧的引用STACK& assign(const STACK&s) 功能:使用棧s給棧p賦值返回值:棧的引用
25、void print( ) const功能:打印棧返回值:無STACK( ) 功能:銷毀棧返回值:無3.軟件開發在Codeblocks編譯環境下,使用C+語言編寫。4.軟件測試測試結果見圖2.1圖2.15.特點與不足5.1技術特點完成了初定目標,無其他特點。5.2不足和改進的建議人機交互需要進一步完善。6.過程和體會6.1遇到的主要問題和解決方法由于第一次使用c+面向對象編寫程序,開始不明白對象的生成及使用。在和同學老師的溝通和交流中,慢慢學會了編程的方法。6.2課程設計的體會C+語言與C語言有很多相通的地方,所以其中的某些原理和方法可以互相借鑒,這樣就減少了在理解上的難度。7.源碼和說明7.
26、1文件清單及其功能說明experiment2.cpp源碼experiment2.exe可執行文件。7.2用戶使用說明書experiment2.cpp是程序的源碼,可通過修改其中main函數中的變量來測試各個函數。7.3源代碼#include <iostream>#include <string>using namespace std;class STACK int *const elems;/申請內存用于存放棧的元素 const int max;/棧能存放的最大元素個數 int pos;/棧實際已有元素個數,棧空時pos=0;public:STACK(int m);/初
27、始化棧:最多m個元素STACK(const STACK&s); /用棧s拷貝初始化棧int size ( ) const;/返回棧的最大元素個數maxint howMany ( ) const;/返回棧的實際元素個數posint getelem (int x) const;/取下標x處的棧元素STACK& push(int e); /將e入棧,并返回棧STACK& pop(int &e); /出棧到e,并返回棧STACK& assign(const STACK&s); /賦s給棧,并返回被賦值的棧void print( ) const;/打印棧S
28、TACK( );/銷毀棧;STACK:STACK(int m):elems(new intm),max(m),pos(0)STACK:STACK(const STACK&s):elems(new ints.size(),max(s.size(),pos(s.howMany() for(int i=0;i<pos;i+) elemsi=s.getelem(i); cout<<"復制構造成功"<<endl;int STACK:size() const return max;int STACK:howMany() const return p
29、os;int STACK:getelem (int x) const return elemsx;STACK& STACK:push(int e) if(pos<max) elemspos=e; pos+; else cout<<"fulln" return *this;STACK& STACK:pop(int &e) if(pos=0) cout<<"empty stack"return *this; pos-; e = elemspos; cout<<"出棧成功"
30、return *this;STACK& STACK:assign(const STACK&s) int i; delete elems;/ elems = new int s.size();/ max = s.size(); pos = s.howMany(); for(i=0;i<s.howMany();i+) elemsi = s.getelem(i); return *this;void STACK:print( ) const int i; cout<<"棧的元素為:" for(i=0;i<pos;i+) cout<&l
31、t;elemsi<<" " cout<<endl;STACK:STACK() delete elems;/ elems= 0; / max = 0; pos = 0; cout<<"析構完成"int main() STACK s(7); s.push(5); s.push(7); s.push(9); s.push(11); s.print(); int i; s.pop(i); cout<<"出棧元素"<<i<<endl; STACK p(s); cout<
32、;<"容量"<<p.size()<<endl; cout<<"當前元素數目"<<p.howMany();實驗三.基于算符重載的整型棧編程1.需求分析1.1題目要求整型棧是一種先進后出的存儲結構,對其進行的操作通常包括判斷棧是否為空、向棧頂添加一個整型元素、出棧等。整型棧類型及其操作函數采用面向對象的C+語言定義,請將完成上述操作的所有函數采用C+編程, 然后寫一個main函數對棧的所有操作函數進行測試。class STACK int *const elems;/申請內存用于存放棧的元素 const i
33、nt max;/棧能存放的最大元素個數 int pos;/棧實際已有元素個數,棧空時pos=0;public:STACK(int m);/初始化棧:最多m個元素STACK(const STACK&s); /用棧s拷貝初始化棧virtual int size ( ) const;/返回棧的最大元素個數maxvirtual operator int ( ) const;/返回棧的實際元素個數posvirtual int operator (int x) const;/取下標x處的棧元素virtual STACK& operator<<(int e); /將e入棧,并返回
34、棧virtual STACK& operator>>(int &e);/出棧到e,并返回棧virtual STACK& operator=(const STACK&s);/賦s給棧,并返回被賦值的棧virtual void print( ) const;/打印棧virtual STACK( );/銷毀棧;1.2需求分析采用面向對象的C+語言定義,構建整型棧并對其進行判斷棧是否為空、向棧頂添加一個整型元素、出棧等操作。2.系統設計2.1概要設計首先需要定義一個類來實現棧,然后依次實現棧的各個功能,在主函數中給定一個棧然后,然后通過函數調用實現棧的功能。
35、2.2詳細設計初始化定義一個類,分配一個數組空間來存儲棧內元素信息,然后初始化為0; 實現入棧則需要將入棧元素e放入棧內,采用了先判斷棧的最大容量夠不夠的問題,如果不夠重新分配空間,并且讓e入棧,將當前元素pos加一;然后返回棧結構。 實現出棧操作,首先判斷是不是空,若空直接返回,不空則需將棧頂的元素賦給一個變量然后將當前元素pos減一;返回棧結構。實現棧的賦給即需要將s1棧內的元素依次賦給s2棧的,當前元素也需一致并且返回新的棧結構。3.軟件開發在Codeblocks編譯環境下,使用C+語言編寫。4.軟件測試測試結果見圖3.1圖3.15.特點與不足5.1技術特點使用了符號重載,在一定程度上簡
36、化了函數。5.2不足和改進的建議在使用符號重載時需要特別注意,防止與其他操作符混淆。6.過程和體會6.1遇到的主要問題和解決方法對于符號重載,剛開始不會調用函數,之后通過查閱書籍,明白了重載的含義。6.2課程設計的體會本次實驗以實驗二為基礎,通過使用符號重載來更簡單的實現實驗目的。7.源碼和說明7.1文件清單及其功能說明experiment3.cpp源碼experiment3.exe可執行文件。7.2用戶使用說明書experiment3.cpp是程序的源碼,可通過修改其中main函數中的變量來測試各個函數。7.3源代碼#include <iostream>#include <
37、string>using namespace std;class STACK int *const elems;/申請內存用于存放棧的元素 const int max;/棧能存放的最大元素個數 int pos;/棧實際已有元素個數,棧空時pos=0;public:STACK(int m);/初始化棧:最多m個元素STACK(const STACK&s); /用棧s拷貝初始化棧virtual int size ( ) const;/返回棧的最大元素個數maxvirtual operator int () const;/返回棧的實際元素個數posvirtual int operato
38、r (int x) const;/取下標x處的棧元素virtual STACK& operator<<(int e); /將e入棧,并返回棧virtual STACK& operator>>(int &e);/出棧到e,并返回棧virtual STACK& operator=(const STACK&s); /賦s給棧,并返回被賦值的棧virtual void print( ) const;/打印棧virtual STACK( );/銷毀棧;STACK:STACK(int m):elems(new intm),max(m),pos
39、(0)STACK:STACK(const STACK&s):elems(new ints.max),max(s.max),pos(s.pos) for(int i=0;i<pos;i+) elemsi=s.elemsi;int STACK:size ( ) constreturn max;STACK:operator int () constreturn pos;int STACK:operator (int x) constreturn elemsx;STACK& STACK:operator<<(int e) if(pos>max) cout<
40、<"棧滿" else *(elems+pos)=e; pos+; return (*this);STACK& STACK:operator>>(int &e) if(pos=0) cout<<"棧空" else e=*(elems+pos-1); pos-; return (*this);STACK& STACK:operator=(const STACK&s) delete elems; *(int*)&elems = new ints.max; *(int*)&max =
41、s.max; for(pos=0;pos<s.pos;pos+) elemspos = s.elemspos; return *this;void STACK:print( ) const for(int i=0;i<pos;i+) cout<<elemsi<<"n"STACK:STACK( ) delete elems; if(elems=0) cout<<"銷毀失敗"<<endl; else cout<<"銷毀成功"<<endl; int main
42、() STACK i(5),j(8); i<<1<<3<<6<<9; int k; i>>k; cout<<k<<"n" i.print(); j=i; j.print(); j<<1<<2<<3<<4; cout<<endl<<(int)j;實驗四. 面向對象的整型隊列編程1.需求分析1.1題目要求整型隊列是一種先進先出的存儲結構,對其進行的操作通常包括判斷隊列是否為空、向隊列頂添加一個整型元素、出隊列等。整型隊列類型
43、及其操作函數采用面向對象的C+語言定義,請將完成上述操作的所有函數采用C+編程, 然后寫一個main函數對隊列的所有操作函數進行測試。class QUEUE int *const elems;/申請內存用于存放隊列的元素 const int max;/隊列能存放的最大元素個數 int head, tail;/隊列頭和尾,隊列空時head=tail;初始時head=tail=0public:QUEUE(int m);/初始化隊列:最多m個元素QUEUE(const QUEUE&s); /用隊列s拷貝初始化隊列virtual operator int ( ) const;/返回隊列的實際元
44、素個數virtual QUEUE& operator<<(int e)volatile; /將e入隊列,并返回隊列virtual QUEUE& operator>>(int &e)volatile;/出隊列到e,并返回隊列virtual QUEUE& operator=(const QUEUE&s); /賦s給隊列,并返回被賦值的隊列virtual void print( ) const;/打印隊列virtual QUEUE( );/銷毀隊列;1.2需求分析本題目用數組實現隊列,需要預知需要空間的大小,會造成空間浪費或不夠用;插入
45、或刪除不需要動態分配或刪除內存,耗時很小;支持隨機存取。2.系統設計定義一個類,分配一個數組空間來存儲棧內元素信息,類中分別定義兩個int元素表示隊列的頭和尾,入棧的時候,頭加一;出棧的時候,尾加一。3.軟件開發在Codeblocks編譯環境下,使用C+語言編寫。4.軟件測試測試結果見圖4.1圖4.15.特點與不足5.1技術特點通過創建隊列類QUEUE,完成了隊列的構造析構等諸多功能;同時再次運用重載操作符方便了入隊出隊等操作的完成。5.2不足和改進的建議隊列一旦生成則無法改變。6.過程和體會6.1遇到的主要問題和解決方法如何構建一個循環隊列,解決方法利用求余的方法,當頭結點大于最大元素的時候
46、,除以最大元素求余,重新的得到頭結點。6.2課程設計的體會本次實驗使用面向對象的方法來編寫一個隊列,讓我對隊列的構建以及對其進行一些列的操作有了更進一步的了解。與前幾次棧的實驗相比,難度有所增加,但更鍛煉了個人能力。7.源碼和說明7.1文件清單及其功能說明experiment4.cpp源碼experiment4.exe可執行文件。7.2用戶使用說明書experiment4.cpp是程序的源碼,可通過修改其中main函數中的變量來測試各個函數。7.3源代碼#include <iostream>#include <string>using namespace std;cla
47、ss QUEUE int *const elems;/申請內存用于存放隊列的元素 const int max;/隊列能存放的最大元素個數 int head, tail;/隊列頭和尾,隊列空時head=tail;初始時head=tail=0public:QUEUE(int m);/初始化隊列:最多m個元素QUEUE(const QUEUE&s); /用隊列s拷貝初始化隊列virtual operator int ( ) const;/返回隊列的實際元素個數virtual QUEUE& operator<<(int e); /將e入隊列,并返回隊列virtual QUE
48、UE& operator>>(int &e);/出隊列到e,并返回隊列virtual QUEUE& operator=(const QUEUE&s); /賦s給隊列,并返回被賦值的隊列virtual void print( ) const;/打印隊列virtual QUEUE( );/銷毀隊列;QUEUE:QUEUE(int m):elems(new intm),max(m),head(0),tail(0)QUEUE:QUEUE(const QUEUE&s):elems(new ints.max),max(s.max),head(s.head
49、),tail(s.tail) for(int i=head;i<tail;i+) elemsi=s.elemsi;QUEUE:operator int () const if(tail>=head) return (tail-head); return (max-head+tail);QUEUE& QUEUE:operator<<(int e) if(tail+1)%max=head) cout<<"隊列滿n" else elemstail=e; tail+; return (*this);QUEUE& QUEUE:ope
50、rator>>(int &e) if(head=tail) cout<<"隊列空n" else e=elemshead; head=(head+)%max; return(*this);QUEUE& QUEUE:operator=(const QUEUE&s) delete elems; *(int*)&elems = new ints.max; *(int*)&max = s.max; head = s.head; tail = s.tail; for(int i=head;i<tail;i+) ele
51、msi=s.elemsi; cout<<"賦值成功n" return *this;void QUEUE:print( ) const if(head=tail) cout<<"Emptyn" cout<<"隊列元素為:" if(head<tail) for(int i=head;i<tail;i+) cout<<elemsi<<"t" else for(int i=head;i<max+1;i+) cout<<elemsi&l
52、t;<"t" for(int i=0;i<tail;i+) cout<<elemsi<<"t" cout<<"n"QUEUE:QUEUE( ) delete elems; *(int*)&elems = 0; *(int*)&max =0; head = tail =0;int main() QUEUE q(5); q<<2<<5<<8; cout<<"元素數目"<<(int)q<<endl; QUEUE p(q); p.print(); int i; q>>i; cout
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設備設備衛生管理制度
- 設置宿舍衛生管理制度
- 設計單位施工管理制度
- 設計顧問公司管理制度
- 診所安全用藥管理制度
- 2025年中國滑雪用護目鏡行業市場全景分析及前景機遇研判報告
- 試驗檢測資料管理制度
- 財務賬目健全管理制度
- 賬戶托管服務管理制度
- 貨運碼頭貨場管理制度
- 下肢功能鍛煉的護理方法
- 2024-2025學年湘教版七年級數學下冊期末素養測試卷(二)含答案
- DB31/T 1204-2020標準先進性評價通用要求
- 2025年中國半球諧振陀螺儀行業市場前景預測及投資價值評估分析報告
- 《奇異空間》課件 -2024-2025學年湘美版(2024)初中美術七年級下冊
- 合伙或養雞協議書
- 2024年西安高新區公辦學校教師招聘真題
- 行政管理學科試題及答案分享
- 2023-2024學年上海市浦東區八年級(下)期末數學試卷 (含答案)
- 會務技能測試題及答案
- 公司辦公用品管理規程:申購、領用與報廢流程詳解
評論
0/150
提交評論