中國礦大2019測繪軟體設計與實現實習報告

2021-09-27 10:03:55 字數 3271 閱讀 7563

explicit cmyseqlist(int size);

public: // 複製建構函式、賦值運算

cmyseqlist(const cmyseqlist& sl);

cmyseqlist& operator=(const cmyseqlist& sl);

public: // 成員函式

int length( ) const;

int find(int& x) const; //查詢

int locate(int i) const定位

int insert(int& x, int i ); //插入

int remove(int& x刪除

int next(int& x後繼

int prior(int& x前驅

bool isempty( );

bool isfull ( );

int get(int i提取

private: // 成員變數

int * _data;

int _cursize;

int _maxsize;

};#endif // !defined(afx_myseqlist_h__22afe5a1_96f2_480a_b8ea_351e1df49cf7__included_)

順序錶類的部分:

// myseqlist.cpp: implementation of the cmyseqlist class.

//#include "stdafx.h"

#include "myseqlist.h"

#include

using namespace std;

// construction/destruction

cmyseqlist::cmyseqlist()

: _data(null)

, _cursize(0)

, _maxsize(0)

cmyseqlist::cmyseqlist(int size)

: _cursize(0)

, _maxsize(size)

//析構函式

cmyseqlist::~cmyseqlist()

//複製建構函式

cmyseqlist::cmyseqlist(const cmyseqlist& sl)

//_data = sl._data;

_cursize = sl._cursize;

_maxsize = sl._maxsize;

}// 賦值運算子

cmyseqlist& cmyseqlist::operator=(const cmyseqlist& sl)

int cmyseqlist::length() const

int cmyseqlist::find(int& x) const //查詢

int cmyseqlist::locate(int i) const //定位

int cmyseqlist::insert(int& x, int i ) //插入

int cmyseqlist::remove(int& x刪除

}return isdel;

}int cmyseqlist::next(int& x後繼

}return -1;

}int cmyseqlist::prior(int& x前驅

}return -1;

}bool cmyseqlist::isempty( )

bool cmyseqlist::isfull ( )

int cmyseqlist::get (int i提取

函式實現部分:

// wmy_myseqlist.cpp : defines the entry point for the console application.

#include "stdafx.h"

#include"myseqlist.h"

#include

using namespace std;

int main(int argc, char* ar**)

cout<<"輸出線性表:"< cout << "myseqlist:\n";

for (int j = 0; j < sl.length(); ++j)

cout << sl.get(j) << " ";

cout << endl;

cout<<"輸出插入乙個數的線性表:"< int x = 5;

sl.insert(x, 2);

cout << "myseqlist:\n";

for (j = 0; j < sl.length(); ++j)

cout << sl.get(j) << " ";

cout << endl;

cout<<"輸出刪除乙個數的線性表:"< sl.remove(x);

cout << "myseqlist:\n";

for (j = 0; j < sl.length(); ++j)

cout << sl.get(j) << " ";

cout << endl;

cmyseqlist sl2(sl);

cout<<"輸出線性表的copy:"< cout << "myseqlist2:\n";

for (j = 0; j < sl2.length(); ++j)

cout << sl2.get(j) << " ";

cout << endl;

return 0;

}四、演算法測試資料及其執行結果

五、實驗小結(問題及心得)

說實話,以前的c++學的很爛,基本上就是個小白。不過老師給了我們乙個半成品,然後我參照《資料結構》書上的例項,上網查詢資料,最後終於完成了。總結完成本次實驗就是要先定義好類,然後編寫順序表的各種操作,例項化後看結果是否正確。

實驗名稱:二叉樹的構建與遍歷

一、實驗目的

充分理解二叉樹的類的定義;設計資料結構和演算法,實現按層次構造二叉樹的演算法;掌握樹的前根序、中根序和後根序遍歷演算法。

二、實驗內容

利用c++語言程式設計實現二叉樹的構建及其先序、中序、後序遍歷演算法

三、關鍵問題描述及其實現**

關鍵問題描述:要求能夠按先序遍歷次序輸入二叉樹中結點的值來構造二叉樹cmybintree;然後用遞迴和非遞迴演算法實現二叉樹cmybintree的中序遍歷;接著編寫演算法實現求二叉樹cmybintree中指定結點的路徑,即從鍵盤輸入二叉樹cmybintree的任一結點,可以輸出從根結點到該結點所經歷的結點。

軟體設計與體系結構

延安大學計算機學院實驗報告專用紙 姓名實驗室 軟體實驗室機號 實驗日期 年月日 班級軟體15課程名稱軟體設計與結構任課教師指導教師 實驗專案名稱軟體體系結構風格之kwic關鍵詞索引系統 實驗組別第組 學號教師評語及成績 實驗成績 教師簽字 一 實驗目的和要求 鞏固和加強 軟體體系結構 課程中關於軟體...

哈爾濱工程大學2019級軟體設計與體系結構B卷

哈爾濱工程大學本科生考試試卷 2014 2015 年 2 學期 課程編號 0920116 課程名稱 軟體設計與體系結構 一 填空題 每空1分,共10分 1.gof設計模式根據目的準則可分為和 三種模式。2.遠端 為處於相同或不同機器上不同位址空間中的物件提供 3.就乙個類而言,應該只有乙個引起它變化...

2019軟體設計師下午試題分析與解答

試題一 共15分 閱讀以下說明和圖,回答問題1至問題4,將解答填入答題紙的對應欄內。說明 某音像製品出租商店欲開發乙個音像管理資訊系統,管理音像製品的租借業務。需求如下 1 系統中的客戶資訊檔案儲存了該商店的所有客戶的使用者名稱 密碼等資訊。對於首次來租借的客戶,系統會為其生成使用者名稱和初始密碼。...