2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(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 詳細設(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 詳細設(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<<"刪除失?。?quot;<<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>  [2]嚴(yán)蔚敏.?dāng)?shù)據(jù)結(jié)構(gòu)[M].清華大學(xué)出版社,2005.</p><p>  [3]劉大有.?dāng)?shù)據(jù)結(jié)構(gòu)(C語言版)[M].高等教育出版社,2004.</p><p>  [4]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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論