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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  課程設(shè)計(jì)報(bào)告</b></p><p><b>  目錄</b></p><p>  1、 課程設(shè)計(jì)目的1</p><p>  2、 課程設(shè)計(jì)名稱及內(nèi)容2</p><p>  2.1程序設(shè)計(jì)組成框圖2</p><p>  3、 任務(wù)和要求3

2、</p><p>  4、 課程設(shè)計(jì)報(bào)告內(nèi)容5</p><p>  4.1 流程圖顯示5</p><p>  4.2 程序?qū)崿F(xiàn)思路6</p><p><b>  5、程序演示10</b></p><p>  5.1、進(jìn)入系統(tǒng)10</p><p>  5.2添加設(shè)備

3、信息10</p><p>  5.3刪除指定設(shè)備信息11</p><p>  5.4根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息12</p><p>  5.5 顯示所有設(shè)備信息12</p><p>  5.6 將設(shè)備信息存儲(chǔ)在文本中13</p><p><b>  6、總結(jié)14</b></p>

4、;<p><b>  源代碼15</b></p><p><b>  參考文獻(xiàn)32</b></p><p><b>  課程設(shè)計(jì)目的</b></p><p>  將理論教學(xué)中涉及到的知識(shí)點(diǎn)貫穿起來,對(duì)不同的數(shù)據(jù)類型、程序控制結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)作一比較和總結(jié),結(jié)合設(shè)計(jì)題目進(jìn)行綜合性應(yīng)用,對(duì)

5、所學(xué)知識(shí)達(dá)到融會(huì)貫通的程度。通過課程設(shè)計(jì),學(xué)生在下述各方面的能力應(yīng)該得到鍛煉:</p><p> ?。?)進(jìn)一步鞏固、加深學(xué)生所學(xué)專業(yè)課程《C++程序設(shè)計(jì)語言》的基本理論知識(shí),理論聯(lián)系實(shí)際,進(jìn)一步培養(yǎng)學(xué)生綜合分析問題,解決問題的能力。</p><p> ?。?)全面考核學(xué)生所掌握的基本理論知識(shí)及其實(shí)際業(yè)務(wù)能力,從而達(dá)到提高學(xué)生素質(zhì)的最終目的。</p><p> ?。?/p>

6、3)利用所學(xué)知識(shí),開發(fā)小型應(yīng)用系統(tǒng),掌握運(yùn)用C++語言編寫調(diào)試應(yīng)用系統(tǒng)程序,訓(xùn)練獨(dú)立開發(fā)應(yīng)用系統(tǒng),進(jìn)行數(shù)據(jù)處理的綜合能力。</p><p> ?。?)對(duì)于給定的設(shè)計(jì)題目,如何進(jìn)行分析,理清思路,并給出相應(yīng)的數(shù)學(xué)模型。 </p><p> ?。?)掌握結(jié)構(gòu)化程序設(shè)計(jì)方法,熟悉面向?qū)ο蟪绦蛟O(shè)計(jì)方法。</p><p> ?。?)熟練掌握C++語言的基本語法,靈活運(yùn)用各種數(shù)

7、據(jù)類型。</p><p>  (7)進(jìn)一步掌握在集成環(huán)境下如何調(diào)試程序和修改程序。</p><p><b>  課程設(shè)計(jì)名稱及內(nèi)容</b></p><p>  課程設(shè)計(jì)名稱:實(shí)驗(yàn)室設(shè)備管理系統(tǒng)</p><p>  設(shè)計(jì)內(nèi)容:編寫一個(gè)簡單的實(shí)驗(yàn)室設(shè)備管理程序,幫助管理實(shí)驗(yàn)室設(shè)備信息。要求具有設(shè)備信息管理的功能。其中包括設(shè)備

8、信息的錄入、刪除、查詢和修改等功能。還應(yīng)包括對(duì)實(shí)驗(yàn)室信息管理的功能。其中包括對(duì)實(shí)驗(yàn)室信息的錄入、刪除、修改和查詢等功能。</p><p>  2.1程序設(shè)計(jì)組成框圖</p><p><b>  任務(wù)和要求</b></p><p>  運(yùn)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,要求選擇動(dòng)態(tài)數(shù)組類模板或鏈表類模板,任務(wù)中要運(yùn)用I/O流對(duì)象對(duì)文件進(jìn)行讀寫操作。&l

9、t;/p><p>  本題程序應(yīng)提供的基本管理功能有:</p><p>  添加:即增加一條信息到設(shè)備信息中,或增加一條信息到實(shí)驗(yàn)室 信息中;</p><p>  顯示:即在屏幕上顯示所有設(shè)備或?qū)嶒?yàn)室信息;</p><p>  存儲(chǔ):即將設(shè)備信息和實(shí)驗(yàn)室信息分別保存在文件中;</p><p>  裝入:即將文件中

10、的信息讀入程序;</p><p>  查詢:可根據(jù)設(shè)備名稱查找具體情況,若找到,顯示在屏幕上; </p><p>  修改:可修改設(shè)備信息,或?qū)?shí)驗(yàn)室信息進(jìn)行修改。</p><p><b>  課程設(shè)計(jì)報(bào)告內(nèi)容</b></p><p><b>  4.1 流程圖顯示</b></p>&

11、lt;p>  4.2 程序?qū)崿F(xiàn)思路</p><p>  定義一個(gè)結(jié)點(diǎn)類,用于存放實(shí)驗(yàn)室設(shè)備的各種信息;</p><p>  定義一個(gè)Link類,把數(shù)據(jù)以鏈表的形式存儲(chǔ),鏈表的每個(gè)結(jié)點(diǎn)為一個(gè)Node對(duì)象;</p><p>  定義一個(gè)Shebei類,用于包裝Link類及菜單操作;</p><p>  定義Link類和Shebei類的成員函

12、數(shù),實(shí)現(xiàn)要求的各種功能;</p><p><b>  Link類:</b></p><p>  class Link//Link類,把數(shù)據(jù)以鏈表的形式存儲(chǔ),鏈表的每個(gè)結(jié)點(diǎn)為一個(gè)Node對(duì)象</p><p><b>  {</b></p><p><b>  private:</b&g

13、t;</p><p>  Node *head; //鏈表的頭指針,為Node對(duì)象類型的指針</p><p><b>  public :</b></p><p>  Link();//構(gòu)造函數(shù),初始化變量</p><p>  bool linkIsEmpty();//判斷鏈表是否為空</p><p&

14、gt;  void linkInsert(Node *newnode);//向鏈表中插入新的結(jié)點(diǎn)</p><p>  bool linkDelete(int nid);//從鏈表中刪除的結(jié)點(diǎn)</p><p>  void linkClear();//清空鏈表中數(shù)據(jù)</p><p>  void linkView();//查看鏈表中數(shù)據(jù)</p><

15、p>  Node* linkFind(int nid);//在鏈表中查找id為nid結(jié)點(diǎn),返回指向該結(jié)點(diǎn)的指針</p><p>  Node* getHead();//獲取頭指針</p><p><b>  };</b></p><p><b>  Shebei類:</b></p><p> 

16、 class Shebei</p><p><b>  {</b></p><p><b>  private:</b></p><p>  Link clink;//Link對(duì)象成員</p><p>  bool k;//記錄數(shù)據(jù)是否被修改</p><p><b>

17、;  public:</b></p><p><b>  Shebei();</b></p><p>  void ShebeiClear();</p><p>  void ShebeiInsert();</p><p>  void ShebeiDelete();</p><p>

18、  void ShebeiFind();</p><p>  void ShebeiModify();</p><p>  void ShebeiView();</p><p>  void ShebeiLoad();</p><p>  void ShebeiSave();</p><p>  void Exit()

19、;//退出程序</p><p>  void showMenu();//顯示菜單</p><p>  void showTip();//顯示操作提示</p><p>  void doMenu(char n);//執(zhí)行相應(yīng)菜單項(xiàng)功能</p><p><b>  };</b></p><p>  然

20、后就是各個(gè)函數(shù)的具體定義。</p><p>  菜單選擇功能的實(shí)現(xiàn),使用switch語句;</p><p>  菜單選擇函數(shù)的定義:</p><p>  void Shebei::showMenu()</p><p><b>  {</b></p><p>  cout<<"

21、\t\t**************************************************"<<endl; cout<<"\t\t* 實(shí)驗(yàn)室設(shè)備管理系統(tǒng) *"<<endl;</p><p>  cout<<"\t\t*

22、 *"<<endl;</p><p>  cout<<"\t\t* 1--清空:清除所有設(shè)備信息 *"<<endl;</p><p>  cout<<"\t\t*

23、 *"<<endl;</p><p>  cout<<"\t\t* 2--添加:增加一個(gè)設(shè)備到設(shè)備信息中 *"<<endl;</p><p>  cout<<"\t\t*

24、 *"<<endl;</p><p>  cout<<"\t\t* 3--刪除:刪除指定設(shè)備數(shù)據(jù) *"<<endl; cout<<"\t\t* *&

25、quot;<<endl;</p><p>  cout<<"\t\t* 4--查找:根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息 *"<<endl;</p><p>  cout<<"\t\t* *"&

26、lt;<endl;</p><p>  cout<<"\t\t* 5--修改:修改指定設(shè)備信息 *"<<endl;</p><p>  cout<<"\t\t* *"<

27、;<endl;</p><p>  cout<<"\t\t* 6--顯示:在屏幕上顯示所有設(shè)備的信息 *"<<endl;</p><p>  cout<<"\t\t* *"<<en

28、dl;</p><p>  cout<<"\t\t* 7--存儲(chǔ):將設(shè)備信息保存在一個(gè)文件中 *"<<endl;</p><p>  cout<<"\t\t* *"<<endl;<

29、/p><p>  cout<<"\t\t* 0--退出:安全的退出本系統(tǒng) *"<<endl;</p><p>  cout<<"\t\t**************************************************"<<endl;</p

30、><p><b>  }</b></p><p>  void Shebei::showTip()</p><p><b>  {</b></p><p>  cout<<endl;</p><p>  cout<<"**************

31、**操作完成*********************"<<endl;</p><p>  cout<<"**************選擇0-7 繼續(xù)*****************"<<endl;</p><p>  cout<<"請(qǐng)選擇:";</p><p>&l

32、t;b>  }</b></p><p>  void Shebei::doMenu(char n)</p><p><b>  {</b></p><p><b>  switch(n)</b></p><p><b>  {</b></p>&

33、lt;p><b>  case '1':</b></p><p>  ShebeiClear();</p><p><b>  break;</b></p><p><b>  case '2':</b></p><p>  ShebeiI

34、nsert();</p><p><b>  break;</b></p><p><b>  case '3':</b></p><p>  ShebeiDelete();</p><p><b>  break;</b></p><p&g

35、t;<b>  case '4':</b></p><p>  ShebeiFind();</p><p><b>  break;</b></p><p><b>  case '5':</b></p><p>  ShebeiModify()

36、;</p><p><b>  break;</b></p><p><b>  case '6':</b></p><p>  ShebeiView();</p><p><b>  break;</b></p><p><b&g

37、t;  case '7':</b></p><p>  ShebeiSave();</p><p><b>  break;</b></p><p><b>  case '0':</b></p><p><b>  Exit();</b&

38、gt;</p><p><b>  break;</b></p><p><b>  default:</b></p><p>  cout<<"輸入錯(cuò)誤!";</p><p><b>  }</b></p><p>&l

39、t;b>  }</b></p><p><b>  5、程序演示</b></p><p><b>  5.1、進(jìn)入系統(tǒng)</b></p><p>  5.2添加設(shè)備信息 </p><p>  5.3刪除指定設(shè)備信息</p><p>  5.4根據(jù)設(shè)備數(shù)據(jù)查找設(shè)

40、備信息 </p><p>  5.5 顯示所有設(shè)備信息</p><p>  5.6 將設(shè)備信息存儲(chǔ)在文本中</p><p><b>  6、總結(jié)</b></p><p>  經(jīng)過一個(gè)星期的C++程序設(shè)計(jì),讓我明白到了C++這門課的重要性,C++作為一門電腦學(xué)的基礎(chǔ)課,是我們必須掌握的順電腦飛速發(fā)展的今天,掌握電腦的應(yīng)用是

41、如今每一位大學(xué)生所必須掌握的,掌握電腦有對(duì)各人來說有我種好處,學(xué)習(xí)電腦是一種本領(lǐng),也是一種生存的技能,而C++做為電腦的基礎(chǔ),掌握它更是我們這些大學(xué)生所必須掌握的。</p><p>  經(jīng)過這次程序設(shè)計(jì),讓我認(rèn)識(shí)到了C++的運(yùn)用是相當(dāng)廣泛的,才拿到題目的時(shí)候,我真的不知道該怎么辦,但隨著慢慢的設(shè)計(jì),思路也總算有了,這樣才能繼續(xù)進(jìn)行下去,這時(shí)我才真正認(rèn)識(shí)到了C+++的功能原來是那么的多。一個(gè)復(fù)雜的實(shí)驗(yàn)室設(shè)備管理系統(tǒng)

42、,經(jīng)過500-600行的代碼就可以完完全全的達(dá)到,這是讓我非常驚訝的,但相對(duì),如今的C++也是非常難的,這學(xué)期學(xué)到的一些內(nèi)容,都是C++的重點(diǎn),但學(xué)下來以后感覺還是很難所以必須先打好基礎(chǔ),基礎(chǔ)好了,學(xué)什么都會(huì)容易很多。</p><p>  這次的程序設(shè)計(jì)讓我重新認(rèn)識(shí)到了C++,這是一門非常重要的科目,我們必須付出很多倍的努力學(xué)習(xí)它,才能熟練地掌握它。</p><p><b>  

43、源代碼</b></p><p>  #include<iostream></p><p>  #include<cstdlib></p><p>  #include<string></p><p>  #include<fstream></p><p>  

44、#include<sstream></p><p>  using namespace std;</p><p>  class Node //結(jié)點(diǎn)類,用于存放客戶的各種信息</p><p><b>  {</b></p><p><b>  public:</b></p>

45、;<p>  long id; //實(shí)驗(yàn)設(shè)備編號(hào)</p><p>  string name; //名稱</p><p>  string type; //設(shè)備類型</p><p>  string suoshushiyanshi; //實(shí)

46、驗(yàn)設(shè)備所屬實(shí)驗(yàn)室</p><p>  string buytime; //購買時(shí)間</p><p>  string price; //價(jià)格</p><p>  string amount; //庫存量</p><p>  string shengchanri

47、qi; //生產(chǎn)日期</p><p>  string shiyongshouming; //使用壽命</p><p>  string weight; //重量</p><p>  Node *next; //指向下一結(jié)點(diǎn)的指針</p><p>  Nod

48、e(long id=000,string nname="noname",string ntype="unkown",string nsuoshushiyanshi="unknow",</p><p>  string nbuytime="unknow",string nprice="unknow",string n

49、amount="unknow", string nshengchanriqi="unkown",</p><p>  string nshiyongshouming="unknow",string nweight="unknow" );//構(gòu)造函數(shù),初始化變量</p><p><b>  };<

50、/b></p><p>  class Link//Link類,把數(shù)據(jù)以鏈表的形式存儲(chǔ),鏈表的每個(gè)結(jié)點(diǎn)為一個(gè)Node對(duì)象</p><p><b>  {</b></p><p><b>  private:</b></p><p>  Node *head; //鏈表的頭指針,為Node對(duì)象類

51、型的指針</p><p><b>  public :</b></p><p>  Link();//構(gòu)造函數(shù),初始化變量</p><p>  bool linkIsEmpty();//判斷鏈表是否為空</p><p>  void linkInsert(Node *newnode);//向鏈表中插入新的結(jié)點(diǎn)</p

52、><p>  bool linkDelete(int nid);//從鏈表中刪除的結(jié)點(diǎn)</p><p>  void linkClear();//清空鏈表中數(shù)據(jù)</p><p>  void linkView();//查看鏈表中數(shù)據(jù)</p><p>  Node* linkFind(int nid);//在鏈表中查找id為nid結(jié)點(diǎn),返回指向該結(jié)

53、點(diǎn)的指針</p><p>  Node* getHead();//獲取頭指針</p><p><b>  };</b></p><p>  Node::Node(long nid, string nname, string ntype,string nsuoshushiyanshi,</p><p>  string n

54、buytime,string nprice,string namount, string nshengchanriqi,</p><p>  string nshiyongshouming,string nweight)</p><p><b>  {</b></p><p><b>  id=nid;</b></p

55、><p>  name=nname;</p><p>  type=ntype;</p><p>  suoshushiyanshi=nsuoshushiyanshi;</p><p>  buytime=nbuytime;</p><p>  price=nprice;</p><p>  amo

56、unt=namount;</p><p>  shengchanriqi=nshengchanriqi;</p><p>  shiyongshouming=nshiyongshouming;</p><p>  weight=nweight;</p><p>  next=NULL;</p><p><b>

57、;  }</b></p><p>  Link::Link() //構(gòu)造函數(shù),初始化鏈表為空</p><p><b>  {</b></p><p>  head=NULL;</p><p><b>  }</b></p><p>  bool Link::li

58、nkIsEmpty() //判斷鏈表是否為空,空則返回true</p><p><b>  {</b></p><p>  return(head==NULL);</p><p><b>  }</b></p><p>  void Link::linkInsert(Node *newnode)

59、 //按id值從小到大的順序,插入新的結(jié)點(diǎn)</p><p><b>  {</b></p><p><b>  Node *p1;</b></p><p>  if(!head)//鏈表為空的情況</p><p>  head=newnode;</p><p>  else

60、if((head->id)>(newnode->id)) //插入到第一個(gè)結(jié)點(diǎn)的情況</p><p><b>  {</b></p><p>  newnode->next=head;</p><p>  head=newnode;</p><p><b>  }</b>&l

61、t;/p><p>  else //插入到第二個(gè)及以后情況</p><p><b>  {</b></p><p><b>  p1=head;</b></p><p><b>  while(1)</b></p><p><b>  {</

62、b></p><p>  if(!(p1->next))</p><p><b>  {</b></p><p>  p1->next=newnode;</p><p><b>  break;</b></p><p><b>  }</b&

63、gt;</p><p>  else if((p1->next)->id>newnode->id)</p><p><b>  {</b></p><p>  newnode->next=p1->next;</p><p>  p1->next=newnode;</p>

64、;<p><b>  break;</b></p><p><b>  }</b></p><p>  p1=p1->next;</p><p><b>  }</b></p><p><b>  }</b></p>&l

65、t;p><b>  }</b></p><p>  bool Link::linkDelete(int nid) //刪除結(jié)點(diǎn),成功則返回true</p><p><b>  {</b></p><p><b>  Node *p;</b></p><p>  if(he

66、ad==NULL)//鏈表為空的情況</p><p>  return false;</p><p>  if(head->id==nid) //刪除的為第一個(gè)結(jié)點(diǎn)的情況</p><p><b>  {</b></p><p>  head=head->next;</p><p>  

67、return true;</p><p><b>  }</b></p><p><b>  p=head;</b></p><p>  while(p->next) //刪除的為第二個(gè)及以后結(jié)點(diǎn)的情況</p><p><b>  {</b></p><

68、;p>  if((p->next)->id==nid)</p><p><b>  {</b></p><p>  p->next=(p->next)->next;</p><p>  return true;</p><p><b>  }</b></p&

69、gt;<p>  p=p->next;</p><p><b>  }</b></p><p>  return false;</p><p><b>  }</b></p><p>  void Link::linkClear() //清空鏈表</p><p

70、><b>  {</b></p><p>  head=NULL;</p><p><b>  }</b></p><p>  Node* Link::linkFind(int nid) //查找id值為nid的結(jié)點(diǎn),返回該結(jié)點(diǎn)的指針</p><p><b>  {</b>

71、;</p><p>  Node *p=head; //沒找到符合條件的結(jié)點(diǎn)的話,返回的指針值為NULL</p><p><b>  while(p)</b></p><p><b>  {</b></p><p>  if(p->id==nid)</p>

72、<p><b>  break;</b></p><p><b>  else</b></p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  return p;</b></p&

73、gt;<p><b>  }</b></p><p>  void Link::linkView() //顯示鏈表數(shù)據(jù)</p><p><b>  {</b></p><p>  Node *p=head;</p><p><b>  while(p)</b>&l

74、t;/p><p><b>  {</b></p><p>  cout<<"實(shí)驗(yàn)設(shè)備編號(hào):"<<p->id<<endl;</p><p>  cout<<"名稱:"<<p->name<<endl;</p><

75、;p>  cout<<"類型:"<<p->type<<endl;</p><p>  cout<<"所屬實(shí)驗(yàn)室:"<<p->suoshushiyanshi<<endl;</p><p>  cout<<"購買時(shí)間:"<<

76、;p->buytime<<endl;</p><p>  cout<<"價(jià)格:"<<p->price<<endl;</p><p>  cout<<"庫存量:"<<p->amount<<endl;</p><p>  cout

77、<<"生產(chǎn)日期:"<<p->shengchanriqi<<endl;</p><p>  cout<<"使用壽命:"<<p->shiyongshouming<<endl;</p><p>  cout<<"重量:"<<p-&

78、gt;weight<<endl;</p><p>  cout<<"*******************************************************"<<endl;</p><p>  p=p->next;</p><p><b>  }</b><

79、/p><p><b>  }</b></p><p>  Node* Link::getHead()</p><p><b>  {</b></p><p>  return head;</p><p><b>  }</b></p><

80、p>  //類Shebei,用于包裝Link類及菜單操作</p><p>  class Shebei</p><p><b>  {</b></p><p><b>  private:</b></p><p>  Link clink;//Link對(duì)象成員</p><p

81、>  bool k;//記錄數(shù)據(jù)是否被修改</p><p><b>  public:</b></p><p><b>  Shebei();</b></p><p>  void ShebeiClear();</p><p>  void ShebeiInsert();</p>

82、<p>  void ShebeiDelete();</p><p>  void ShebeiFind();</p><p>  void ShebeiModify();</p><p>  void ShebeiView();</p><p>  void ShebeiLoad();</p><p> 

83、 void ShebeiSave();</p><p>  void Exit();//退出程序</p><p>  void showMenu();//顯示菜單</p><p>  void showTip();//顯示操作提示</p><p>  void doMenu(char n);//執(zhí)行相應(yīng)菜單項(xiàng)功能</p><

84、;p><b>  };</b></p><p>  Shebei::Shebei()</p><p><b>  {</b></p><p>  Link();//調(diào)用成員對(duì)象的構(gòu)造函數(shù)</p><p>  ShebeiLoad();//從文件中讀取數(shù)據(jù),創(chuàng)建鏈表</p><

85、;p>  k=false;//設(shè)置數(shù)據(jù)被修改</p><p><b>  }</b></p><p>  void Shebei::ShebeiClear() //清空設(shè)備記錄</p><p><b>  {</b></p><p>  clink.linkClear();</p>

86、<p>  cout<<"成功清空設(shè)備信息記錄!"<<endl;</p><p><b>  }</b></p><p>  void Shebei::ShebeiInsert() //插入設(shè)備記錄</p><p><b>  {</b></p>&l

87、t;p>  Node *p=new Node();</p><p>  cout<<"請(qǐng)輸入設(shè)備編號(hào):";</p><p>  cin>>p->id;</p><p>  cout<<"請(qǐng)輸入名稱:";</p><p>  cin>>p->

88、;name;</p><p>  cout<<"請(qǐng)輸入類型:";</p><p>  cin>>p->type;</p><p>  cout<<"請(qǐng)輸入所屬實(shí)驗(yàn)室:";</p><p>  cin>>p->suoshushiyanshi;&l

89、t;/p><p>  cout<<"請(qǐng)輸入購買時(shí)間:";</p><p>  cin>>p->buytime;</p><p>  cout<<"請(qǐng)輸入價(jià)格:";</p><p>  cin>>p->price;</p><p&

90、gt;  cout<<"請(qǐng)輸入庫存量:";</p><p>  cin>>p->amount;</p><p>  cout<<"請(qǐng)輸入生產(chǎn)日期:";</p><p>  cin>>p->shengchanriqi;</p><p>  cou

91、t<<"請(qǐng)輸入設(shè)備重量:";</p><p>  cin>>p->weight;</p><p>  if(!clink.linkFind(p->id)) //判斷設(shè)備信息是否存在</p><p><b>  {</b></p><p>  clink.linkIn

92、sert(p);</p><p><b>  k=true;</b></p><p><b>  }</b></p><p><b>  else</b></p><p>  cout<<"設(shè)備編號(hào)為"<<p->id<&l

93、t;"的的設(shè)備已存在,插入失敗!"<<endl;</p><p><b>  }</b></p><p>  void Shebei::ShebeiDelete() //刪除設(shè)備記錄</p><p><b>  {</b></p><p><b>  lon

94、g i;</b></p><p>  if(clink.linkIsEmpty())//鏈表為空的情況</p><p>  cout<<"沒有設(shè)備記錄!"<<endl;</p><p><b>  else</b></p><p><b>  {</

95、b></p><p>  cout<<"請(qǐng)輸入設(shè)備編號(hào):";</p><p><b>  cin>>i;</b></p><p>  if(clink.linkDelete(i))</p><p><b>  {</b></p><

96、;p>  cout<<"成功刪除編號(hào)為"<<i<<"的實(shí)驗(yàn)記錄!"<<endl;</p><p><b>  k=true;</b></p><p><b>  }</b></p><p><b>  else</

97、b></p><p>  cout<<"沒有找到編號(hào)為"<<i<<"的設(shè)備!"<<endl;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void S

98、hebei::ShebeiFind() //查找某編號(hào)的設(shè)備記錄</p><p><b>  {</b></p><p><b>  long n;</b></p><p><b>  Node *p;</b></p><p>  if(clink.linkIsEmpty())

99、//鏈表為空的情況</p><p>  cout<<"沒有設(shè)備記錄!"<<endl;</p><p><b>  else</b></p><p><b>  {</b></p><p>  cout<<"請(qǐng)輸入要查找設(shè)備的編號(hào):&q

100、uot;;</p><p><b>  cin>>n;</b></p><p>  p=clink.linkFind(n);//獲得找到的結(jié)點(diǎn)的指針</p><p>  if(p) //指針值不為NULL時(shí)</p><p><b>  {</b></p><p>

101、  cout<<"實(shí)驗(yàn)設(shè)備編號(hào):"<<p->id<<endl;</p><p>  cout<<"名稱:"<<p->name<<endl;</p><p>  cout<<"類型:"<<p->type<<e

102、ndl;</p><p>  cout<<"所屬實(shí)驗(yàn)室:"<<p->suoshushiyanshi<<endl;</p><p>  cout<<"購買時(shí)間:"<<p->buytime<<endl;</p><p>  cout<<

103、"價(jià)格:"<<p->price<<endl;</p><p>  cout<<"庫存量:"<<p->amount<<endl;</p><p>  cout<<"生產(chǎn)日期:"<<p->shengchanriqi<<en

104、dl;</p><p>  cout<<"使用壽命:"<<p->shiyongshouming<<endl;</p><p>  cout<<"重量:"<<p->weight<<endl;</p><p><b>  }</b&

105、gt;</p><p>  else//指針值為NULL時(shí)</p><p>  cout<<"沒有找到編號(hào)為"<<n<<"的設(shè)備記錄!"<<endl;</p><p><b>  }</b></p><p><b>  }&

106、lt;/b></p><p>  void Shebei::ShebeiModify() //修改某編號(hào)的設(shè)備信息</p><p><b>  {</b></p><p><b>  long n;</b></p><p><b>  Node *p;</b></p

107、><p>  if(clink.linkIsEmpty())//鏈表為空的情況</p><p>  cout<<"沒有設(shè)備記錄!"<<endl;</p><p><b>  else</b></p><p><b>  {</b></p><

108、;p>  cout<<"請(qǐng)輸入要修改設(shè)備的編號(hào):";</p><p><b>  cin>>n;</b></p><p>  p=clink.linkFind(n);//獲得找到的結(jié)點(diǎn)的指針</p><p>  if(p) //指針值不為NULL時(shí)</p><p><

109、;b>  {</b></p><p>  cout<<"實(shí)驗(yàn)設(shè)備編號(hào):"<<p->id<<endl;</p><p>  cout<<"名稱:"<<p->name<<endl;</p><p>  cout<<&q

110、uot;類型:"<<p->type<<endl;</p><p>  cout<<"所屬實(shí)驗(yàn)室:"<<p->suoshushiyanshi<<endl;</p><p>  cout<<"購買時(shí)間:"<<p->buytime<<

111、endl;</p><p>  cout<<"價(jià)格:"<<p->price<<endl;</p><p>  cout<<"庫存量:"<<p->amount<<endl;</p><p>  cout<<"生產(chǎn)日期:&qu

112、ot;<<p->shengchanriqi<<endl;</p><p>  cout<<"使用壽命:"<<p->shiyongshouming<<endl;</p><p>  cout<<"重量:"<<p->weight<<endl;

113、</p><p>  cout<<"請(qǐng)輸入新的設(shè)備信息"<<endl;</p><p>  cout<<"請(qǐng)輸入設(shè)備編號(hào):";</p><p>  cin>>p->id;</p><p>  cout<<"請(qǐng)輸入名稱:"

114、;;</p><p>  cin>>p->name;</p><p>  cout<<"請(qǐng)輸入類型:";</p><p>  cin>>p->type;</p><p>  cout<<"請(qǐng)輸入所屬實(shí)驗(yàn)室:";</p><p

115、>  cin>>p->suoshushiyanshi;</p><p>  cout<<"請(qǐng)輸入購買時(shí)間:";</p><p>  cin>>p->buytime;</p><p>  cout<<"請(qǐng)輸入價(jià)格:";</p><p>  

116、cin>>p->price;</p><p>  cout<<"請(qǐng)輸入庫存量:";</p><p>  cin>>p->amount;</p><p>  cout<<"請(qǐng)輸入生產(chǎn)日期:";</p><p>  cin>>p->

117、;shengchanriqi;</p><p>  cout<<"請(qǐng)輸入設(shè)備重量:";</p><p>  cin>>p->weight;</p><p><b>  }</b></p><p>  else//指針值為NULL時(shí)</p><p>

118、  cout<<"沒有找到編號(hào)為"<<n<<"的設(shè)備記錄!"<<endl;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void Shebei::ShebeiView() //顯示

119、所有設(shè)備的記錄</p><p><b>  {</b></p><p>  if(clink.linkIsEmpty())</p><p>  cout<<"沒有設(shè)備記錄!"<<endl;</p><p><b>  else</b></p>

120、<p>  clink.linkView();</p><p><b>  }</b></p><p>  void Shebei::ShebeiLoad() //從文件中讀入數(shù)據(jù),創(chuàng)建鏈表</p><p><b>  {</b></p><p><b>  Node *p;&

121、lt;/b></p><p><b>  long nid;</b></p><p>  ifstream infile("data.txt");</p><p>  if(!infile)</p><p>  cerr<<"錯(cuò)誤:數(shù)據(jù)文件不能打開!\n";<

122、;/p><p><b>  else</b></p><p>  while(infile>>nid) //讀取客戶,直到讀空</p><p><b>  {</b></p><p>  p=new Node();</p><p>  p->id=nid;<

123、;/p><p>  infile>>p->name>>" "; //讀取名稱</p><p>  infile>>p->type>>" ";</p><p>  infile>>p->suoshushiyanshi>>&qu

124、ot; ";</p><p>  infile>>p->buytime>>" ";</p><p>  infile>>p->price>>" ";</p><p>  infile>>p->amount>>"

125、 ";</p><p>  infile>>p->shengchanriqi>>" ";</p><p>  infile>>p->weight>>" ";</p><p>  clink.linkInsert(p);</p><p&

126、gt;<b>  }</b></p><p>  infile.close(); //關(guān)閉文件</p><p><b>  }</b></p><p>  void Shebei::ShebeiSave() //將數(shù)據(jù)保存到文件</p><p><b>  {</b><

127、/p><p>  Node *p=clink.getHead();</p><p>  ofstream outfile("data.txt");</p><p>  if(!outfile)</p><p>  cerr<<"錯(cuò)誤:數(shù)據(jù)文件不能打開!\n";</p><p&

128、gt;<b>  else</b></p><p><b>  {</b></p><p><b>  while(p)</b></p><p><b>  {</b></p><p>  outfile<<p->id<<&q

129、uot; "<<p->name<<" "<<p->type<<" "<<p->suoshushiyanshi</p><p>  <<" "<<p->buytime<<" "<<p-&

130、gt;price<<" "<<p->amount<<" "<<p->shengchanriqi</p><p>  <<" "<<p->weight<<" "<<endl;</p><p>

131、  p=p->next;</p><p><b>  }</b></p><p><b>  k=false;</b></p><p>  cout<<"保存成功!"<<endl;</p><p><b>  }</b><

132、/p><p><b>  }</b></p><p>  void Shebei::Exit()</p><p><b>  {</b></p><p>  char s='Y';</p><p>  if(k) //判斷數(shù)據(jù)是否修改</p><

133、;p><b>  {</b></p><p>  cout<<"數(shù)據(jù)已經(jīng)改變,是否保存?(y/n):";</p><p><b>  cin>>s;</b></p><p>  if(s=='y'||s=='Y')</p>&l

134、t;p>  ShebeiSave();</p><p><b>  }</b></p><p>  cout<<"已安全退出,";</p><p>  system("pause");</p><p><b>  exit(0);</b>&l

135、t;/p><p><b>  }</b></p><p>  void Shebei::showMenu()</p><p><b>  {</b></p><p>  cout<<"\t\t 實(shí)驗(yàn)室設(shè)備管理系統(tǒng) &quo

136、t;<<endl;</p><p>  cout<<"\t\t**************************************************"<<endl; </p><p>  cout<<"\t\t*

137、 *"<<endl;</p><p>  cout<<"\t\t* 1--清空:清除所有設(shè)備信息 *"<<endl;</p><p>  cout<<"\t\t*

138、 *"<<endl;</p><p>  cout<<"\t\t* 2--添加:增加一個(gè)設(shè)備到設(shè)備信息中 *"<<endl;</p><p>  cout<<"\t\t* *&qu

139、ot;<<endl;</p><p>  cout<<"\t\t* 3--刪除:刪除指定設(shè)備數(shù)據(jù) *"<<endl;</p><p>  cout<<"\t\t* *"

140、;<<endl;</p><p>  cout<<"\t\t* 4--查找:根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息 *"<<endl;</p><p>  cout<<"\t\t* *"<&

141、lt;endl;</p><p>  cout<<"\t\t* 5--修改:修改指定設(shè)備信息 *"<<endl;</p><p>  cout<<"\t\t* *"<<

142、;endl;</p><p>  cout<<"\t\t* 6--顯示:在屏幕上顯示所有設(shè)備的信息 *"<<endl;</p><p>  cout<<"\t\t* *"<<endl;&

143、lt;/p><p>  cout<<"\t\t* 7--存儲(chǔ):將設(shè)備信息保存在一個(gè)文件中 *"<<endl;</p><p>  cout<<"\t\t* *"<<endl;</p&g

144、t;<p>  cout<<"\t\t* 0--退出:安全的退出本系統(tǒng) *"<<endl;</p><p>  cout<<"\t\t**************************************************"<<endl;</p>

145、<p><b>  }</b></p><p>  void Shebei::showTip()</p><p><b>  {</b></p><p>  cout<<endl;</p><p>  cout<<"****************操作

146、完成*********************"<<endl;</p><p>  cout<<"**************選擇0-7 繼續(xù)*****************"<<endl;</p><p>  cout<<"請(qǐng)選擇:";</p><p><b&

147、gt;  }</b></p><p>  void Shebei::doMenu(char n)</p><p><b>  {</b></p><p><b>  switch(n)</b></p><p><b>  {</b></p><p

148、><b>  case '1':</b></p><p>  ShebeiClear();</p><p><b>  break;</b></p><p><b>  case '2':</b></p><p>  ShebeiInser

149、t();</p><p><b>  break;</b></p><p><b>  case '3':</b></p><p>  ShebeiDelete();</p><p><b>  break;</b></p><p>&l

150、t;b>  case '4':</b></p><p>  ShebeiFind();</p><p><b>  break;</b></p><p><b>  case '5':</b></p><p>  ShebeiModify();<

151、;/p><p><b>  break;</b></p><p><b>  case '6':</b></p><p>  ShebeiView();</p><p><b>  break;</b></p><p><b>  

152、case '7':</b></p><p>  ShebeiSave();</p><p><b>  break;</b></p><p><b>  case '0':</b></p><p><b>  Exit();</b>&

153、lt;/p><p><b>  break;</b></p><p><b>  default:</b></p><p>  cout<<"輸入錯(cuò)誤!";</p><p><b>  }</b></p><p><b&

154、gt;  }</b></p><p>  int main()</p><p><b>  {</b></p><p><b>  Shebei c;</b></p><p>  char i='9';</p><p>  c.showMenu()

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論