一..實驗目的
鞏固線性表的資料結構,學會線性表的應用。
1.回顧線性表的邏輯結構,線性表的物理儲存結構和常見操作。
2.學習運用線性表的知識來解決實際問題。
3.進一步鞏固程式除錯方法。
4.進一步鞏固模板程式設計。
二.實驗時間
準備時間為第2周到第4周,具體集中實驗時間為第4週第2次課。2個學時。
三..實驗內容
1.建立乙個n個學生成績的順序表,對錶進行插入、刪除、查詢等操作。分別輸出結果。
要求如下:
1)用順序表來實現。
2)用單鏈表來實現。
2.解決約瑟夫問題
設有編號為1,2,3,n的n(n>0)個人圍在一起,每人持有乙個密碼m,從第乙個人開始報數,報到m時停止報數,報m的人出圈,再從下乙個人開始重新報數,報到m時停止報數,報m的人出圈,……直到的所有人出圈為止。當給定n和m後,輸出出圈的次序。
要求如下:自定義資料結構,確定儲存方法,並設計演算法。在主程式中輸入n和m後,輸出結果。
3.實現兩個集合的相等判定、並、交和差運算。要求:
1)自定義資料結構
2)自先儲存結構,並設計演算法。在vc中實現。
以上三題,第1題必須完成。第2和第3題可以作為選做題。
四.參考資料
實驗教材p170到182.
五.實驗報告
1)問題一:順序表的實現
**如下:
using namespace std;
#define maxnumber 100
struct mark
;class stu_mark
;stu_mark::stu_mark()
stu_mark::stu_mark(mark m,int n)
void stu_mark::l_nght()
mark stu_mark::get(int n)
void stu_mark::insert(float f, int n)
cl_ss1[n-1].score = f;
lenght++;
}mark stu_mark::d_lete(int n)
lenght--;
return a;
}
2)問題一:單鏈表的實現
#includeusing namespace std;
#define maxnumber 100
struct mark
;class stu_mark
;stu_mark::stu_mark()
stu_mark::stu_mark(mark m, int n)
lenght = n;
}void stu_mark::l_nght()
mark stu_mark::get(int n)
mark stu_mark::get(float f)
} throw"無該成績";
}void stu_mark::insert(float f, int n)
if (point == null)throw"位置錯誤";
else }
float stu_mark::d_lete(int n)
if (point == null || point->next == null)
throw"位置錯誤";
else }
int main()
以上是實驗二的實現**。 上傳得有點晚了。
第乙個問題
1.和 的區別 和 的區別 解答 和 都可以用作邏輯與的運算子,表示邏輯與 and 當運算子兩邊的表示式的結果都為true時,整個運算結果才為true,否則,只要有一方為false,則結果為false。還具有短路的功能,即如果第乙個表示式為false,則不再計算第二個表示式,例如,對於if str ...
第乙個Hello Django(二)
不說廢話,繼續乾貨!今天說如何列印自己的第乙個hello django。django.contrib.admin django.contrib.auth django.contrib.contenttypes django.contrib.sessions django.contrib.messag...
第乙個程式設計問題
從現在開始學程式設計 遇到各種問題 程式2 題目 企業發放的獎金根據利潤提成。利潤 i 低於或等於10萬元時,獎金可提10 利潤高 於10萬元,低於20萬元時,低於10萬元的部分按10 提成,高於10萬元的部分,可可提 成7.5 20萬到40萬之間時,高於20萬元的部分,可提成5 40萬到60萬之間...