版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(論文)</p><p> 題 目: 學(xué) 生 學(xué) 籍 管 理 系 統(tǒng) </p><p> 二〇一七年六月二十三日</p><p><b> 課程設(shè)計任務(wù)書</b></p><p> 注:任務(wù)書由指導(dǎo)教師填寫。</p><p>&
2、lt;b> 摘 要</b></p><p> 學(xué)生學(xué)籍管理系統(tǒng)是一個教育單位不可或缺的部分。它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生學(xué)籍管理系統(tǒng)能夠為用戶提供充足的信息和快捷的查詢手段。學(xué)生學(xué)籍管理系統(tǒng)完成對學(xué)生、科目、成績管理全過程,包括學(xué)生信息的添加、修改和刪除,學(xué)生科目成績的修改等基本功能。</p><p> 本系統(tǒng)功能強、穩(wěn)定性好、操作簡單
3、、維護方便。 能給學(xué)校對學(xué)生學(xué)籍的管理帶來極大的實用價值。</p><p> 關(guān)鍵詞 學(xué)生學(xué)籍管理系統(tǒng)、教育、管理</p><p><b> 目 錄</b></p><p><b> 摘 要I</b></p><p> 1 課程設(shè)計的目的和意義1</p><p&
4、gt;<b> 2 需求分析2</b></p><p> 1.1 需求概述2</p><p> 1.2 需求環(huán)境2</p><p> 1.3 功能描述2</p><p><b> 3 概要設(shè)計3</b></p><p> 3.1 程序功能模塊3<
5、/p><p> 3.2 操作流程圖3</p><p> 3.3 數(shù)據(jù)結(jié)構(gòu)的設(shè)計4</p><p><b> 4 詳細(xì)設(shè)計5</b></p><p> 4.1 信息錄入5</p><p> 4.1.1 代碼功能5</p><p> 4.1.2 程序流程圖5
6、</p><p> 4.1.3 功能實現(xiàn)代碼5</p><p> 4.2 信息插入6</p><p> 4.2.1 代碼功能6</p><p> 4.2.2 程序流程圖6</p><p> 4.2.3 功能實現(xiàn)代碼6</p><p> 4.3 信息刪除7</p>
7、;<p> 4.3.1 代碼功能7</p><p> 4.3.2 程序流程圖7</p><p> 4.3.3 功能實現(xiàn)代碼7</p><p> 4.4 信息修改8</p><p> 4.4.1 代碼功能8</p><p> 4.4.2 程序流程圖8</p><p
8、> 4.4.3 功能實現(xiàn)代碼9</p><p> 4.5 信息查詢9</p><p> 4.5.1 代碼功能9</p><p> 4.5.2 程序流程圖9</p><p> 4.5.3 功能實現(xiàn)代碼10</p><p> 5 測試與運行12</p><p><
9、b> 結(jié)束語19</b></p><p><b> 參考文獻20</b></p><p> 附錄A:其它函數(shù)21</p><p><b> 致 謝25</b></p><p> 課程設(shè)計的目的和意義</p><p> 一般來講,課程設(shè)計教
10、學(xué)實驗比課程實驗復(fù)雜一些,但又要比畢業(yè)設(shè)計簡單一些,深度更廣并且更加接近實用。目的是通過課程設(shè)計的綜合訓(xùn)練,培養(yǎng)學(xué)生實際分析問題、編程和動手能力,使學(xué)生對數(shù)據(jù)結(jié)構(gòu)進行更深一層的了解,培養(yǎng)同學(xué)們對學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)這門課程的興趣,讓同學(xué)們學(xué)會如何去查找資料和整合處理這些資料的能力,也為以后的大學(xué)畢業(yè)設(shè)計論文打下了一個初步的基礎(chǔ)。</p><p> 在進行課程設(shè)計后能基本達到以下要求:</p><p&
11、gt; ?。?)基本掌握面向過程程序設(shè)計的基本思路和方法;</p><p> ?。?)達到熟練掌握數(shù)據(jù)結(jié)構(gòu)的基本知識和技能;</p><p> ?。?)能夠利用所學(xué)的基本知識和技能,解決簡單的程序設(shè)計問題。</p><p><b> 2 需求分析</b></p><p><b> 2.1 需求概述<
12、/b></p><p> 需求分析階段主要有兩個方面的任務(wù):分析用戶的數(shù)據(jù)要求和分析用戶的處理要求。通過以上分析,我們已經(jīng)基本了解了用戶對處理的要求,接下來需要的工作是分析用戶對數(shù)據(jù)的要求。</p><p> 學(xué)生學(xué)籍管理系統(tǒng)主要需要用戶可以對學(xué)生的相關(guān)信息進行操作,例如信息錄入、信息插入、信息刪除、信息修改、信息查詢等內(nèi)容。</p><p><b&
13、gt; 2.2 需求環(huán)境</b></p><p> 本課程設(shè)計需要的設(shè)備為硬件要求和軟件配置要求具體要求如下:</p><p> 硬件要求:一臺計算機。</p><p> ?、谲浖渲茫篧INDOWS、C/VC++6.0。</p><p><b> 2.3 功能描述</b></p>
14、<p><b> 1) 信息錄入功能</b></p><p> 在這個功能里包括學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績的錄入。</p><p> 2) 信息插入功能</p><p> 這個功能主要用來增加學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績。</p>
15、<p> 3) 信息刪除功能</p><p> 這個功能主要用來刪除學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績。刪除以學(xué)號為關(guān)鍵字,如果找到相對應(yīng)得學(xué)號,則刪除該學(xué)生的相關(guān)信息。</p><p><b> 4) 信息修改功能</b></p><p> 這個功能主要用來修改學(xué)生成績,當(dāng)學(xué)號和科目均對應(yīng)
16、時,修改該學(xué)生的成績。</p><p><b> 5) 信息查詢功能</b></p><p> 這個功能主要用來通過學(xué)號或?qū)W生姓名查詢學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績。</p><p><b> 3 概要設(shè)計</b></p><p> 3.1 程序功能模
17、塊</p><p> 由需求分析知,本次課程設(shè)計是用鏈表建立一個學(xué)生學(xué)籍管理系統(tǒng),故其功能模塊分為:信息錄入功能、信息插入功能、信息刪除功能、信息修改功能、信息查詢功能。功能模塊圖如下:</p><p> 1 2 3 4 5 6 7 0 </p&g
18、t;<p><b> 圖3.1功能模塊圖</b></p><p> 3.2 操作流程圖</p><p> 1 2 3 4 5 6 7 0 </p><p> 圖3.2 操作流程圖<
19、/p><p> 3.3 數(shù)據(jù)結(jié)構(gòu)的設(shè)計</p><p> 根據(jù)需求分析將用鏈表實現(xiàn)學(xué)生學(xué)籍管理系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)的設(shè)計如下:</p><p><b> 用一個結(jié)構(gòu)體數(shù)組</b></p><p> struct student {char xuehao[12]; char xingming[20]; char xingb
20、ie[5]; char sub[20]; float score; int age; int length; struct student *next; };來分別定義學(xué)號、姓名、性別、科目、成績、年齡、學(xué)生人數(shù)以及next指針。</p><p> 定義一個變量length來統(tǒng)計學(xué)生人數(shù)。</p><p> 用函數(shù)void input(student &s);來錄入學(xué)生信息
21、;用函數(shù)void display(student s);并調(diào)用函數(shù)void show(student s)來顯示學(xué)生信息;用函數(shù)void copy2(student *s1, student *s2);并調(diào)用函數(shù)void copy1(student *s, student *s1)來實現(xiàn)學(xué)生信息的交換;用函數(shù)void sort(student &s);來實現(xiàn)按學(xué)號排序;用函數(shù)int insert(student &s);
22、來實現(xiàn)插入學(xué)生信息;用函數(shù)void Delete(student &s,char *sno );來實現(xiàn)刪除學(xué)生信息;用函數(shù)void update(student &s);來實現(xiàn)更改學(xué)生成績;用函數(shù)void findforxuehao(char *s,student &ss);及函數(shù)void findforxingming(char *s,student &ss);來分別實現(xiàn)按學(xué)生學(xué)號和學(xué)生姓名查詢學(xué)生信
23、息;最后用主函數(shù)int main();來實現(xiàn)對整個程序的運行及各個函數(shù)的調(diào)用。</p><p><b> 4 詳細(xì)設(shè)計</b></p><p><b> 4.1 信息錄入</b></p><p> 4.1.1 代碼功能</p><p> 在這個功能里包括學(xué)生的基本信息和成績信息,學(xué)號、
24、姓名、性別、年齡、科目及對應(yīng)的成績的錄入。</p><p> 4.1.2 程序流程圖</p><p><b> Y</b></p><p><b> N</b></p><p> 圖4.1錄入學(xué)生信息</p><p> 4.1.3 功能實現(xiàn)代碼</p&
25、gt;<p> 信息錄入的代碼如下:</p><p> void input(student &s) {</p><p><b> int n=1;</b></p><p> int cnt=0;</p><p> student *p=&s;</p><p&g
26、t; while(n==1) {</p><p> p->next=(student *)malloc(sizeof(student));</p><p> p=p->next;</p><p> cout<<"請依次輸入學(xué)號,姓名,性別,年齡,科目,成績:"<<endl;</p><
27、;p> cin>>p->xuehao>>p->xingming>>p->xingbie>>p->age>>p->sub>>p->score;</p><p> cout<<"是否還要繼續(xù)錄入?1.是 2.否"<<endl;</p>&l
28、t;p><b> cin>>n;</b></p><p><b> cnt++;</b></p><p><b> }</b></p><p> p->next=NULL;</p><p> s.length=cnt;</p>&
29、lt;p> cout<<"當(dāng)前共有"<<s.length<<"條學(xué)生信息."<<endl;</p><p><b> }</b></p><p><b> 4.2 信息插入</b></p><p> 4.2.1 代碼功
30、能</p><p> 這個功能主要用來增加學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績。</p><p> 4.2.2 程序流程圖 </p><p> 圖4.2插入學(xué)生信息</p><p> 4.2.3 功能實現(xiàn)代碼</p><p> int insert(student &
31、s) {</p><p> student *p,*q;</p><p> q=new student;</p><p> cout<<"請輸入要插入的數(shù)據(jù):"<<endl;</p><p> cin>>q->xuehao>>q->xingming>
32、>q->xingbie>>q->age>>q->sub>>q->score;</p><p><b> p=s.next;</b></p><p> q->next=p->next;</p><p> p->next=q;</p><p
33、><b> sort(s);</b></p><p> cout<<"插入成功!"<<endl;</p><p> s.length++;</p><p> cout<<"當(dāng)前共有"<<s.length<<"條學(xué)生信息.&
34、quot;<<endl;</p><p><b> return 1;</b></p><p><b> }</b></p><p><b> 4.3 信息刪除</b></p><p> 4.3.1 代碼功能</p><p>
35、這個功能主要用來刪除學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績。刪除以學(xué)號為關(guān)鍵字,如果找到相對應(yīng)得學(xué)號,則刪除該學(xué)生的相關(guān)信息。</p><p> 4.3.2 程序流程圖</p><p> N </p><p><b> Y</b></p><p&g
36、t; Y N</p><p><b> Y</b></p><p> 圖4.3刪除學(xué)生信息</p><p> 4.3.3 功能實現(xiàn)代碼</p><p> void Delete(student &s,char *sno ) {</p><p
37、> student *p,*q;</p><p><b> p=s.next;</b></p><p><b> q=&s;</b></p><p> int cnt=0;</p><p> while(p!=NULL) {</p><p> if(
38、!strcmp(sno,p->xuehao)) {</p><p> cout<<"刪除成功!"<<endl;</p><p> q->next = p->next;</p><p> s.length--;</p><p><b> break ;}</b
39、></p><p> q=p;p=p->next; cnt++;}</p><p> if(!p||strcmp(sno,p->xuehao))</p><p> cout<<"刪除失??!"<<endl;</p><p> cout<<"當(dāng)前共有&qu
40、ot;<<s.length<<"條學(xué)生信息."<<endl; }</p><p><b> 4.4 信息修改</b></p><p> 4.4.1 代碼功能</p><p> 這個功能主要用來修改學(xué)生成績,當(dāng)學(xué)號和科目均對應(yīng)時,修改該學(xué)生的成績。當(dāng)學(xué)生學(xué)號及科目均相對應(yīng)時,修改學(xué)
41、生成績。</p><p> 4.4.2 程序流程圖</p><p><b> N</b></p><p><b> Y</b></p><p><b> N</b></p><p><b> Y</b></p>
42、;<p> 圖4.4修改學(xué)生成績</p><p> 4.4.3 功能實現(xiàn)代碼</p><p> void update(student &s) {</p><p> student *p;</p><p><b> p=s.next;</b></p><p>
43、char *a = new char[20];</p><p> char *b = new char[20];</p><p> cout<<"請輸入要修改的的人的學(xué)號:"<<endl;cin>>a;</p><p> cout<<"請輸入要修改的科目:"<<
44、endl;</p><p><b> cin>>b;</b></p><p> while(p) {if((!strcmp(a,p->xuehao))&&(!strcmp(b,p->sub))) {</p><p> cout<<"輸入修改成績:"<<en
45、dl;</p><p> cin>>p->score;</p><p> cout<<"修改成功!"<<endl;</p><p> return ; }p=p->next; </p><p> cout<<"沒有此人或?qū)?yīng)的科目!"&
46、lt;<endl; }</p><p><b> 4.5 信息查詢</b></p><p> 4.5.1 代碼功能</p><p> 這個功能主要用來通過學(xué)號或?qū)W生姓名查詢學(xué)生的基本信息和成績信息,學(xué)號、姓名、性別、年齡、科目及對應(yīng)的成績。</p><p> 4.5.2 程序流程圖</p>
47、<p><b> N</b></p><p> Y </p><p> Y N </p>&l
48、t;p><b> Y</b></p><p> 圖4.5按學(xué)號查找學(xué)生</p><p> N </p><p> Y </p><p> N </p><
49、p> Y </p><p> 圖4.6按姓名查找學(xué)生</p><p> 4.5.3 功能實現(xiàn)代碼</p><p&g
50、t;<b> 1)按學(xué)生學(xué)號查詢</b></p><p> void findforxuehao(char *s,student &ss) {</p><p> student *p=ss.next;</p><p> while(p) {</p><p> if(!strcmp(s,p->xu
51、ehao)) {</p><p> show (*p);</p><p><b> return ;</b></p><p><b> }</b></p><p> p=p->next;</p><p><b> }</b></p&
52、gt;<p> cout<<"沒有找到"<<endl;</p><p><b> return ;</b></p><p><b> }</b></p><p><b> 2)按學(xué)生姓名查詢</b></p><p&g
53、t; void findforxingming(char *s,student &ss) {</p><p> student *p=ss.next;</p><p> while(p) {</p><p> if(!strcmp(s,p->xingming)) {</p><p> show (*p);</p&
54、gt;<p><b> return ;</b></p><p><b> }</b></p><p> p=p->next;</p><p><b> }</b></p><p> cout<<"沒有找到"<
55、<endl;</p><p><b> return ;</b></p><p><b> }</b></p><p><b> 5 測試與運行</b></p><p> 主界面主要是輸出菜單,根據(jù)菜單選擇對應(yīng)的選項來實現(xiàn)相應(yīng)的功能,共有8個選項,分別是8項功能
56、,包括錄入學(xué)生,增刪查改……其運行效果其運行結(jié)果如圖5.1所示</p><p><b> 圖5.1主界面</b></p><p> 輸入1,執(zhí)行錄入學(xué)生信息功能,依次輸入012 張三 男 20 數(shù)學(xué) 80,接著輸入1,再輸入002 李四 女 20 英語 88,接著輸入2結(jié)束錄入信息;在這里還有一定的不足,比如錄入一個學(xué)生后輸入的不是2,也會退出錄入函數(shù),運行效果如
57、圖5.2所示;此功能包含的數(shù)學(xué)較少,還可以添加其他科目或者總分等屬性。</p><p> 圖5.2錄入學(xué)生信息</p><p> 接著輸入7,顯示錄入的學(xué)生信息,運行效果如圖5.3所示:</p><p> 圖5.3錄入學(xué)生信息成功后顯示信息</p><p> 輸入2,執(zhí)行插入學(xué)生信息功能,輸入001 王武 男 21 語文 79;這一功
58、能也有一定的不足,例如可以重復(fù)插入學(xué)生,還有就是每一次只能插入一個學(xué)生,不能實現(xiàn)循環(huán)插入學(xué)生信息;其運行效果如圖5.4所示;</p><p><b> 圖5.4插入信息</b></p><p> 接著輸入7,顯示錄入的學(xué)生信息,運行效果如圖5.5所示:</p><p> 圖5.5插入成功后信息顯示</p><p>
59、 輸入3,執(zhí)行按學(xué)號查詢學(xué)生信息功能,輸入002,如果查詢成功,輸出該學(xué)生的信息,運行效果如圖5.6所示,如果查詢失敗,輸出沒有找到,運行效果如圖5.7所示</p><p> 圖5.6 按學(xué)號查找學(xué)生成功</p><p> 圖5.7 按學(xué)號查找學(xué)生失敗</p><p> 輸入4,執(zhí)行按學(xué)生姓名查詢學(xué)生信息功能,輸入張三,如果查詢成功,輸出該學(xué)生的信息,運行效
60、果如圖5.8所示,如果查詢失敗,輸出沒有找到,運行效果如圖5.9所示</p><p> 圖5.8按姓名查找學(xué)生成功</p><p> 圖5.9按姓名查找學(xué)生失敗</p><p> 輸入5,執(zhí)行修改學(xué)生成績功能,先輸入002,接著輸入英語,然后輸入90,接著輸出修改成功,運行效果如圖5.10所示;當(dāng)先輸入005,接著輸入英語時,由于沒有學(xué)號為005的學(xué)生,所以輸
61、出沒有對應(yīng)的學(xué)生或科目,運行效果如圖5.11所示;當(dāng)先輸入001,接著輸入數(shù)學(xué)時,由于學(xué)號為001的學(xué)生沒有課程名為數(shù)學(xué)的科目,所以輸出沒有對應(yīng)的學(xué)生或科目,運行效果如圖5.12所示;這個小功能有一個問題就是,不能做到輸入學(xué)號或科目后就去判斷是否有該學(xué)生或是否有該科目,必須要都輸入之后才能去判斷,造成了一定的不便。</p><p> 圖5.10修改學(xué)生成績成功</p><p> 圖5.
62、11 修改學(xué)生成績失敗1</p><p> 圖5.12修改學(xué)生成績失敗2</p><p> 接著輸入7,顯示修改成功后的學(xué)生信息,運行效果如圖5.13所示:</p><p> 圖5.13修改成功后信息顯示</p><p> 輸入6,執(zhí)行刪除學(xué)生信息功能,輸入002,如果存在此學(xué)生,輸出刪除成功,運行效果如圖5.14所示,刪除成功后,運
63、行效果如圖5.15所示,如果不存在此學(xué)生,輸出刪除失敗,運行效果如圖5.16所示,此功能不全,還可以添加按姓名刪除,還可以只刪除某一個學(xué)生的某一個項目,不夠完善。</p><p> 圖5.14刪除學(xué)生信息</p><p> 圖5.15刪除學(xué)生信息成功后信息顯示</p><p> 圖5.16刪除學(xué)生信息失敗</p><p> 輸入0,退
64、出程序,運行效果如圖5.17所示</p><p><b> 圖5.17退出</b></p><p><b> 結(jié)束語</b></p><p> 通過一個星期的數(shù)據(jù)結(jié)構(gòu)程序課程設(shè)計,我們從中受益匪淺,并且對數(shù)據(jù)結(jié)構(gòu)程序課程設(shè)計這一門課程有了更深一步的認(rèn)識。們把這學(xué)期所學(xué)的理論知識和實踐聯(lián)系起來在所開發(fā)的項目中漸漸成長。
65、雖然我們對這些新的知識運用得還不是很熟練, 但是相信我們也在滴水穿石地成長起來。發(fā)現(xiàn)問題,提出問題,解決問題,使我們從不足之處出發(fā), 尋找新的學(xué)習(xí)方向。將其中調(diào)用的那些我看不懂的函數(shù)一一查清楚,逐漸弄懂它的設(shè)計思路,思考它有哪些不足,有哪些地方還須要改進, 有什么更好的方法、更簡單的方法去實行。</p><p> 這次學(xué)習(xí)使我克服了偷懶的毛病, 這在我以后的學(xué)習(xí)和工作中的心理定位與調(diào)節(jié)有很大的幫助。我感受到了做
66、系統(tǒng)是一項非常煩瑣周密的學(xué)習(xí)活動,它不但需要一個人周密的思考問題的能力,處理問題的能力,還需要有足夠的耐心和嚴(yán)謹(jǐn)治學(xué)的作風(fēng),來不得半點馬虎。在實習(xí)中, 我們設(shè)計了一組對學(xué)生學(xué)籍進行管理的系統(tǒng),它基本滿足了界面友好,易于操作的要求,因此更利于用戶操作方便, 運行簡易,從而達到對學(xué)生學(xué)籍更加有效系統(tǒng)的管理, 并且速度更快內(nèi)容更直接地達到用戶所想要的效果。在該系統(tǒng)中我們實現(xiàn)了對學(xué)生信息的輸入和存取、讀取,對學(xué)生相關(guān)信息的刪除和插入,并且可以按
67、學(xué)號或姓名查詢學(xué)生的相關(guān)信息, 以及按學(xué)生的學(xué)號進行排序等的功能。但系統(tǒng)中仍然存在一些不足,例如在在修改學(xué)生信息時,不能做到輸入學(xué)號或科目后就去判斷是否有該學(xué)生或是否有該科目,必須要都輸入之后才能去判斷,科目不全、沒有總分和平均分、菜單不美觀等。</p><p> 學(xué)好計算機要重視實踐操作,不僅僅是學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu),還是其它的語言,以及其它的計算機方面的知識都要重在實踐,所以在以后的學(xué)習(xí)過程中,我會更加注視實踐操作
68、。我一邊實踐一邊探索,發(fā)現(xiàn)理論和實踐要充分地結(jié)合,是需要扎實的基本功的,這就表明學(xué)好基礎(chǔ)知識是理論付諸實踐的前提。在實踐中我學(xué)到了很多,希望在以后我能充分利用實習(xí)的機會充實自己, 并希望這樣的機會能被更好更多地提供。</p><p> 在以后的學(xué)習(xí)中,我也會以同樣的方法學(xué)習(xí)其他的知識,不斷地豐富自己,充實自己,提高自己的能力。</p><p><b> 參考文獻</b&
69、gt;</p><p> ?。?]嚴(yán)蔚敏.?dāng)?shù)據(jù)結(jié)構(gòu)(C語言版)[M].清華大學(xué)出版社,2003.</p><p> ?。?]嚴(yán)蔚敏.?dāng)?shù)據(jù)結(jié)構(gòu)[M].清華大學(xué)出版社,2005.</p><p> ?。?]劉大有.?dāng)?shù)據(jù)結(jié)構(gòu)(C語言版)[M].高等教育出版社,2004.</p><p> ?。?]William Ford.William Topp.
70、 Data Structure with C++[M].清華大學(xué)出版社,2003.</p><p><b> 附錄A:其它函數(shù)</b></p><p><b> 交換函數(shù)</b></p><p> void copy1(student *s, student *s1) {</p><p>
71、strcpy(s->xuehao,s1->xuehao);</p><p> strcpy(s->xingming,s1->xingming);</p><p> strcpy(s->xingbie,s1->xingbie);</p><p> strcpy(s->sub,s1->sub);</p>
72、<p> s->score=s1->score;</p><p> s->age=s1->age;</p><p><b> }</b></p><p> void copy2(student *s1, student *s2) {</p><p> student *s=(
73、student *)malloc(sizeof(student));</p><p> copy1(s,s1);</p><p> copy1(s1,s2);</p><p> copy1(s2,s);</p><p><b> }</b></p><p><b> 排序函數(shù)&
74、lt;/b></p><p> void sort(student &s) {</p><p> student *p,*q;</p><p><b> q=s.next;</b></p><p> while(q) {</p><p><b> p=s.next
75、;</b></p><p> while(p!=q) {</p><p> if(strcmp(p->xuehao,q->xuehao)>0)</p><p> copy2(p,q);</p><p> p=p->next;</p><p><b> }</
76、b></p><p> q=q->next;</p><p><b> }</b></p><p><b> 顯示函數(shù)</b></p><p> void show(student s) {</p><p> cout<<s.xuehao&l
77、t;<" ";</p><p> cout<<s.xingming<<" ";</p><p> cout<<s.xingbie<<" ";</p><p> cout<<s.age<<" ";</
78、p><p> cout<<s.sub<<" ";</p><p> cout<<s.score<<" "<<endl;</p><p><b> }</b></p><p> void display(student
79、s) {</p><p> student *p= s.next;</p><p> while(p) {</p><p><b> show(*p);</b></p><p> p=p->next;</p><p><b> }</b></p>
80、<p><b> }</b></p><p><b> 主函數(shù)</b></p><p> int main() {</p><p> student s;</p><p><b> int temp;</b></p><p> c
81、har *b=new char[20];</p><p> char *c=new char[20];</p><p> char *sno=new char[20];</p><p> while(true) {</p><p> cout<<"**********歡迎進入學(xué)生學(xué)籍管理系統(tǒng)**********&
82、quot;<<endl;</p><p> cout<<"1.錄入學(xué)生信息"<<endl;</p><p> cout<<"2.插入學(xué)生信息"<<endl;</p><p> cout<<"3.按學(xué)號查找學(xué)生"<<en
83、dl;</p><p> cout<<"4.按學(xué)生姓名查找學(xué)生"<<endl;</p><p> cout<<"5.修改學(xué)生成績"<<endl;</p><p> cout<<"6.刪除學(xué)生信息"<<endl;</p>
84、<p> cout<<"7.顯示學(xué)生信息"<<endl;</p><p> cout<<"0.退出"<<endl;</p><p> cout<<"請輸入對應(yīng)的選項進行操作:"<<endl;</p><p> ci
85、n>>temp;</p><p> if(temp==0) {</p><p> cout<<"退出成功!"<<endl;</p><p><b> break;</b></p><p><b> }</b></p>&l
86、t;p> switch(temp) {</p><p><b> case 1 :</b></p><p><b> input(s);</b></p><p><b> sort(s);</b></p><p><b> break;</b&g
87、t;</p><p><b> case 2:</b></p><p> insert(s);</p><p><b> break;</b></p><p><b> case 3:</b></p><p> cout<<&quo
88、t;請輸入要查找的人的學(xué)號:"<<endl;</p><p><b> cin>>b;</b></p><p> findforxuehao(b,s);</p><p><b> delete b;</b></p><p><b> break;&
89、lt;/b></p><p><b> case 4:</b></p><p> cout<<"請輸入要查找的人的姓名:"<<endl;</p><p><b> cin>>c;</b></p><p> findforxingm
90、ing(c,s);</p><p><b> delete c;</b></p><p><b> break;</b></p><p><b> case 5:</b></p><p> update(s);</p><p><b>
91、 break;</b></p><p><b> case 6:</b></p><p> cout<<"請輸入你要刪除的學(xué)生的學(xué)號:"<<endl;</p><p><b> cin>>sno;</b></p><p>
92、 Delete(s,sno);</p><p><b> break;</b></p><p><b> case 7:</b></p><p> display(s);</p><p><b> break;</b></p><p><b
93、> default:</b></p><p> cout<<"輸入有誤,請重新輸入!"<<endl<<endl;</p><p><b> break;</b></p><p><b> }</b></p><p>&
94、lt;b> }</b></p><p><b> return 0;</b></p><p><b> }</b></p><p><b> 致 謝</b></p><p> 本次課程設(shè)計中,我得到了很多來自他方的幫助,在這里我要謝謝所有幫助過我的
95、老師和同學(xué),是他們的幫助讓我順利的完成了此次課程設(shè)計。</p><p> 首先,我要謝謝學(xué)校提供實驗室給我們,也為我們提供了一個方便的環(huán)境,還要感謝學(xué)院給與我們這次課程設(shè)計的機會,讓我們可以從中學(xué)到更多的知識。</p><p> 其次,要謝謝這次課程設(shè)計的輔導(dǎo)老師劉小英老師給予我的幫助,沒有她的悉心指導(dǎo)和講解我也不能這么順利的完成本次的課程設(shè)計,在這里衷心的對她表示深深的謝意,謝謝!&
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)結(jié)構(gòu)-課程設(shè)計--學(xué)生管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告--學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告---學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告---學(xué)生選課系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--學(xué)生籍貫管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告--車庫管理系統(tǒng)
- 職工管理系統(tǒng)數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告
- 學(xué)生學(xué)籍管理系統(tǒng)報告--數(shù)據(jù)庫課程設(shè)計
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計-學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計---學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計---學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計----學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計——學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--學(xué)生成績管理系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--- 學(xué)生成績管理系統(tǒng)
- 學(xué)生學(xué)籍管理系統(tǒng)課程設(shè)計報告
- 學(xué)生學(xué)籍管理系統(tǒng)課程設(shè)計報告
評論
0/150
提交評論