C++課程設(shè)計(jì)---實(shí)驗(yàn)室設(shè)備管理系統(tǒng)_第1頁
C++課程設(shè)計(jì)---實(shí)驗(yàn)室設(shè)備管理系統(tǒng)_第2頁
C++課程設(shè)計(jì)---實(shí)驗(yàn)室設(shè)備管理系統(tǒng)_第3頁
C++課程設(shè)計(jì)---實(shí)驗(yàn)室設(shè)備管理系統(tǒng)_第4頁
C++課程設(shè)計(jì)---實(shí)驗(yàn)室設(shè)備管理系統(tǒng)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1課程設(shè)計(jì)的目的22 課程設(shè)計(jì)名稱及內(nèi)容 23任務(wù)要求 24課程設(shè)計(jì)報(bào)告內(nèi)容 31.1 流程圖顯示 31.2 程序?qū)崿F(xiàn)思路 65 程序演小 96 總結(jié) 14參考文獻(xiàn) 14附錄(源代碼) 15實(shí)驗(yàn)室設(shè)備管理系統(tǒng)1、課程設(shè)計(jì)目的將理論教學(xué)中涉及到的知識(shí)點(diǎn)貫穿起來,對(duì)不同的數(shù)據(jù)類型、程序控制結(jié)構(gòu)、數(shù)據(jù)結(jié) 構(gòu)作一比較和總結(jié),結(jié)合設(shè)計(jì)題目進(jìn)行綜合性應(yīng)用,對(duì)所學(xué)知識(shí)達(dá)到融會(huì)貫通的程度。通 過課程設(shè)計(jì),學(xué)生在下述各方面的能力應(yīng)該得到鍛煉:(1)進(jìn)一步鞏固、加深學(xué)生所學(xué)專業(yè)課程C+程序設(shè)計(jì)語言的基本理論知識(shí),理 論聯(lián)系實(shí)際,進(jìn)一步培養(yǎng)學(xué)生綜合分析問題,解決問題的能力。(2)全面考核學(xué)生所掌握的基本理論知識(shí)及其

2、實(shí)際業(yè)務(wù)能力,從而達(dá)到提高學(xué)生素 質(zhì)的最終目的。(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ù)處理的綜合能力。(4)對(duì)于給定的設(shè)計(jì)題目,如何進(jìn)行分析,理清思路,并給出相應(yīng)的數(shù)學(xué)模型。(5)掌握結(jié)構(gòu)化程序設(shè)計(jì)方法,熟悉面向?qū)ο蟪绦蛟O(shè)計(jì)方法。(6)熟練掌握C+語言的基本語法,靈活運(yùn)用各種數(shù)據(jù)類型。(7)進(jìn)一步掌握在集成環(huán)境下如何調(diào)試程序和修改程序。2、課程設(shè)計(jì)名稱及內(nèi)容課程設(shè)計(jì)名稱:實(shí)驗(yàn)室設(shè)備管理系統(tǒng)設(shè)計(jì)內(nèi)容:編寫一個(gè)簡單的實(shí)驗(yàn)室設(shè)備管理程序,幫助管理實(shí)驗(yàn)室設(shè)備信息。要求具有設(shè) 備信息管理的功能。其中包括設(shè)備信息的錄入、刪除、查詢和修

3、改等功能。還應(yīng)包括對(duì)實(shí) 驗(yàn)室信息管理的功能。其中包括對(duì)實(shí)驗(yàn)室信息的錄入、刪除、修改和查詢等功能。3、任務(wù)和要求運(yùn)用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,要求選擇動(dòng)態(tài)數(shù)組類模板或鏈表類模板,任務(wù)中要運(yùn) 用I/O流對(duì)象對(duì)文件進(jìn)行讀寫操作。本題程序應(yīng)提供的基本管理功能有:1)添加:即增加一條信息到設(shè)備信息中,或增加一條信息到實(shí)驗(yàn)室信息中;2)顯示:即在屏幕上顯示所有設(shè)備或?qū)嶒?yàn)室信息;3)存儲(chǔ):即將設(shè)備信息和實(shí)驗(yàn)室信息分別保存在文件中;4)裝入:即將文件中的信息讀入程序;5)查詢:可根據(jù)設(shè)備名稱查找具體情況,若找到,顯示在屏幕上;6)修改:可修改設(shè)備信息,或?qū)?shí)驗(yàn)室信息進(jìn)行修改4、課程設(shè)計(jì)報(bào)告內(nèi)容4.1 流程圖顯示

4、31將新的設(shè)備信息插入鏈表刪除節(jié)點(diǎn)操作的算法流程圖輸入要?jiǎng)h除的設(shè)備的編號(hào)idv4.2 程序?qū)崿F(xiàn)思路定義一個(gè)結(jié)點(diǎn)類,用于存放實(shí)驗(yàn)室設(shè)備的各種信息;定義一個(gè)Link類,把數(shù)據(jù)以鏈表的形式存儲(chǔ),鏈表的每個(gè)結(jié)點(diǎn)為一個(gè)Node對(duì)象;定義一個(gè)Shebei類,用于包裝Link類及菜單操作;定義Link類和Shebei類的成員函數(shù),實(shí)現(xiàn)要求的各種功能;Link 類:class Link/Link 類,把數(shù)據(jù)以鏈表的形式存儲(chǔ),鏈表的每個(gè)結(jié)點(diǎn)為一個(gè)Node對(duì)象private:Node *head; /鏈表的頭指針,為Node對(duì)象類型的指針public :Link();/構(gòu)造函數(shù),初始化變量bool linkIsE

5、mpty();/判斷鏈表是否為空void linkInsert(Node *newnode);/向鏈表中插入新的結(jié)點(diǎn)bool linkDelete(int nid);/從鏈表中刪除的結(jié)點(diǎn)void linkClear();/清空鏈表中數(shù)據(jù)void linkView();/查看鏈表中數(shù)據(jù)Node* linkFind(int nid);/在鏈表中查找id為nid結(jié)點(diǎn),返回指向該結(jié)點(diǎn)的指針Node* getHead();/ 獲取頭指針 ;Shebei 類:class Shebeiprivate:Link clink;/Link 對(duì)象成員bool k;/記錄數(shù)據(jù)是否被修改public:Shebei();

6、void ShebeiClear();void ShebeiInsert();void ShebeiDelete();void ShebeiFind();void ShebeiModify();void ShebeiView();void ShebeiLoad();void ShebeiSave();void Exit();/ 退出程序void showMenu();/顯示菜單void showTip();/顯示操作提示void doMenu(char n);/執(zhí)行相應(yīng)菜單項(xiàng)功能;然后就是各個(gè)函數(shù)的具體定義。菜單選擇功能的實(shí)現(xiàn),使用switch語句;菜單選擇函數(shù)的定義:void Shebei:

7、showMenu()cout<<"tt*"<<endi;cout<<"tt*實(shí)驗(yàn)室設(shè)備管理系統(tǒng)*"<<endl;cout<<"tt*"<<endl;cout<<"tt*1-清空:清除所有設(shè)備信息*"<<endl;cout<<"tt*"<<endl;cout<<"tt*2-添加:增加一個(gè)設(shè)備到設(shè)備信息中*"<<endl;cout<

8、<"tt*"<<endl;cout<<"tt*3-刪除:刪除指定設(shè)備數(shù)據(jù)cout<<"tt*"<<endl;cout<<"tt*4-查找:根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息*"<<endl;cout<<"tt*"<<endl;cout<<"tt*5-修改:修改指定設(shè)備信息*"<<endl;cout<<"tt*"<<endl;co

9、ut<<"tt*6-顯?。涸谄聊簧巷@小所有設(shè)備的信息*"<<endl;cout<<"tt*"<<endl;cout<<"tt*7-存儲(chǔ):將設(shè)備信息保存在一個(gè)義件中*"<<endl;cout<<"tt*"<<endl;cout<<"tt*0-退出:安全的退出本系統(tǒng)*"<<endl;*”*"<<endl;void Shebei:showTip() cout&l

10、t;<endl;cout<<"*操作完成*”<<endl;cout<<"*”<<endl;cout<<" 請(qǐng)選擇:"void Shebei:doMenu(char n)switch(n)case '1':ShebeiClear();break;case '2':ShebeiInsert();break;case '3':ShebeiDelete();break;case '4':ShebeiFind();break;case

11、'5':ShebeiModify();break;case '6':ShebeiView();break;case '7':ShebeiSave(); break;case '0':Exit();break;default:cout<<"輸入錯(cuò)誤!"5、程序演小5.1 、進(jìn)入系統(tǒng)5.2 添加設(shè)備信息人購買r :-.?<口 -刪除刪除設(shè)備數(shù)據(jù)4一查找:根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息5-修改:修改i旨定設(shè)備信息"-退出:安全的退出本系統(tǒng),胞室二 shiijanshil 間t 2010-01-0

12、1 12 四Hy utan:34tal期:2003-01-015.3 刪除指定設(shè)備信息'C:LI se rsmint - sDeskto pDebu 賣幫室設(shè)備管用至統(tǒng).exe"實(shí)驗(yàn)室設(shè)備管理系統(tǒng)1一清空:清除所有設(shè)備信息2添加:增加一個(gè)設(shè)備到設(shè)備信息中3刪除:刪除指定設(shè)備數(shù)據(jù)4查找:根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息5一修改修改指定設(shè)備信息6顯示:在屏幕上顯示所有設(shè)備的信息7存儲(chǔ):將設(shè)備信息保存在一個(gè)文件中 修一退出:安全的退出本系統(tǒng)hhmmhhhhhhhhhhhhhhhhhh檐逅i;5.4 根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息:MiMX請(qǐng)選擇5一修改:修改指定設(shè)備信息6顯示:在屏幕上顯示所有設(shè)

13、備的信息均稱:daKn" 類型:dayinjil 所屬二驗(yàn)室;shiya”hi2 購買時(shí)間:2眄1-砧-g1 彳介格:12時(shí)Hy udn 岸荏箝7B“i 隹產(chǎn)白矍:2 win 1;=壽命:unknn” 考量;W3kg-0退出:安全的退出本系統(tǒng)輸入要查找設(shè)備的編號(hào):10砒'C:U5ersnnint - s ,Des ktopD e bug*實(shí)裝室設(shè)備皆珪至三三e xe5.5 修改設(shè)備信息5.6顯示所有設(shè)備信息JJWWWMMMMWWr=shebe i2室:shiyanshi4 I2001-01-01 M X HMM力,玲:L25Hyuain 庫荏量:54tai 生產(chǎn)日要:1小-1

14、-01 用壽命:unkrwu 量:34用壽命;unkrww量:54kgwM W WT C:U5er5mi nt - 5 De5 lctopD e bug%實(shí)棄室i殳省管洋至游-cke 'J Jr T- V里5修改修改指定設(shè)備信息”-顯示:在屏幕上顯示所有設(shè)備的信息 ?一存儲(chǔ):將設(shè)備信息保存在一個(gè)文件中 目一退出:安全的退出本系統(tǒng)實(shí)典曾備編號(hào)豈斷4 名稱whchei設(shè)備編號(hào)4。的:toLii/ingi:touyingyil 室:whiyac窖hi2 :2001-01-03 I0juanVf > :12tal5.7將設(shè)備信息存儲(chǔ)在文本中" C ;Uier5inn int-s

15、Des ktopD e hugl 空舊室 i殳智管密州權(quán) rawrM-實(shí)驗(yàn)室設(shè)備管理系統(tǒng)-清空:清除所有謾備信息保存人功!* 1*安My HMM XM XXX MUM:請(qǐng)選擇:曜-N-M*z添加:摺加T設(shè)備到設(shè)備信息中 3刪除:刪除指定設(shè)備數(shù)據(jù)4一查找,根據(jù)設(shè)備數(shù)據(jù)查找設(shè)備信息5修改:修改指定設(shè)備信息6顯示:在屏幕上顯示所有設(shè)備的信息”-存儲(chǔ):將設(shè)普信息保存在一個(gè)文件中H退出:安全的退出本系統(tǒng)AMElfHXXXiKJtMMM*HEieXieKiMMSMiKKMM 疑美XXHEiWitKM:利疑箕XXXiMiMMiafiCKM 黃美英XXKWEMSMMWM文件舊 扁瑁且 格式4Q 直看功 幫動(dòng)出

16、)1004 shebei shebei2 shiyanshi4 2001-01-01 1250yuan 54tai 1999-01-01 1003 tduyingyi tguyingyil shiyainshiS 200101-03 lOOOyuan 12tai 1999-01-01 54ks6、總結(jié)經(jīng)過一個(gè)星期的C+程序設(shè)計(jì),讓我明白到了 C+這門課的重要性,C+作為一門電 腦學(xué)的基礎(chǔ)課,是我們必須掌握的順電腦飛速發(fā)展的今天,掌握電腦的應(yīng)用是如今每一位 大學(xué)生所必須掌握的,掌握電腦有對(duì)各人來說有我種好處,學(xué)習(xí)電腦是一種本領(lǐng),也是一 種生存的技能,而C+做為電腦的基礎(chǔ),掌握它更是我們這些大學(xué)生

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

18、等編著C+語言程序設(shè)計(jì)(第三版)北京:清華大學(xué)出版社2 .鄭莉 等編著C+語言程序設(shè)計(jì)(第三版)學(xué)生用書北京:清華大學(xué)出版社3 .李春葆等編著C+程序設(shè)計(jì)學(xué)習(xí)與上機(jī)實(shí)驗(yàn)指導(dǎo)北京:清華大學(xué)出版社4 .范輝 等編著Visual C+6.0程序設(shè)計(jì)簡明教程 高等教育出版社5 .李龍潮« C+程序設(shè)計(jì)實(shí)訓(xùn)教程北京:清華大學(xué)出版社6 .洪國勝 等編著 C+ Builder程序設(shè)計(jì)輕松上手北京:清華大學(xué)出版社口 .嚴(yán)蔚敏等 數(shù)據(jù)結(jié)構(gòu)(c語言版)北京:清華大學(xué)出版社,1997年4月第1版8.胡學(xué)鋼等數(shù)據(jù)結(jié)構(gòu)算法設(shè)計(jì)指導(dǎo)北京:清華大學(xué)出版社,1999年 第1版。源代碼#include<iost

19、ream> #include<cstdlib> #include<string> #include<fstream> #include<sstream> using namespace std; class Node/結(jié)點(diǎn)類, public:long id;string name;string type;string suoshushiyanshi;string buytime;string price;string amount;string shengchanriqi;用于存放客戶的各種信息/實(shí)驗(yàn)設(shè)備編號(hào)/名稱/設(shè)備類型/實(shí)驗(yàn)設(shè)備所屬實(shí)

20、驗(yàn)室/購買時(shí)間/價(jià)格/庫存量/生產(chǎn)日期/使用壽命/重量Node *next;指向下一結(jié)點(diǎn)的指針string shiyongshouming; string weight;Node(long id=000,string nname="noname",string ntype="unkown”,string nsuoshushiyanshi="unknow", string nbuytime="unknow”,string nprice="unknow”,string namount="unknow”, string

21、nshengchanriqi="unkown", string nshiyongshouming="unknow”,string nweight="unknow");/構(gòu)造函數(shù), 初始化變里;class Link/Link類,把數(shù)據(jù)以鏈表的形式存儲(chǔ),鏈表的每個(gè)結(jié)點(diǎn)為一個(gè)Node對(duì)象private:Node *head;/鏈表的頭指針,為Node對(duì)象類型的指針public :Link();構(gòu)造函數(shù),初始化變量bool linkIsEmpty();判斷鏈表是否為空void linkInsert(Node *newnode);/向鏈表中插入新的結(jié)點(diǎn)b

22、ool linkDelete(int nid);/從鏈表中刪除的結(jié)點(diǎn)void linkClear();清空鏈表中數(shù)據(jù)void linkView();/查看鏈表中數(shù)據(jù)Node* linkFind(int nid);/在鏈表中查找id為nid結(jié)點(diǎn),返回指向該結(jié)點(diǎn)的指針 Node* getHead();/iK取頭指針;Node二Node(long nid, string nname, string ntype,string nsuoshushiyanshi, string nbuytime,string nprice,string namount, string nshengchanriqi, st

23、ring nshiyongshouming,string nweight)id=nid;name=nname;type=ntype;suoshushiyanshi=nsuoshushiyanshi;buytime=nbuytime;price=nprice;amount=namount;shengchanriqi=nshengchanriqi;shiyongshouming=nshiyongshouming;weight=nweight;next=NULL;Link:Link()/構(gòu)造函數(shù),初始化鏈表為空head=NULL;bool Link:linkIsEmpty()/判斷鏈表是否為空,空則

24、返回 truereturn(head=NULL);void Link:linkInsert(Node *newnode) /按id值從小到大的順序,插入新的結(jié)點(diǎn) Node *p1;if(!head)/鏈表為空的情況head=newnode;else if(head->id)>(newnode->id) /插入到第一個(gè)結(jié)點(diǎn)的情況newnode->next=head;head=newnode;else /隔入到第二個(gè)及以后情況p1=head;while(1)if(!(p1->next)p1->next=newnode;break;else if(p1->n

25、ext)->id>newnode->id)newnode->next=p1->next;p1->next=newnode;break;p1=p1->next; bool Link:linkDelete(int nid) 刪除結(jié)點(diǎn),成功則返回 trueNode *p;if(head=NULL)/鏈表為空的情況return false;if(head->id=nid) /刪除的為第個(gè)結(jié)點(diǎn)的情況 head=head->next;return true;p=head;while(p->next) 刪除的為第二個(gè)及以后結(jié)點(diǎn)的情況 if(p-&g

26、t;next)->id=nid) p->next=(p->next)->next; return true; p=p->next; return false;void Link:linkClear() / 清空鏈表head=NULL;Node* Link二linkFind(int nid) /查找id值為nid的結(jié)點(diǎn),返回該結(jié)點(diǎn)的指針 NULLNode *p=head;/沒找到符合條件的結(jié)點(diǎn)的話,返回的指針值為while(p) if(p->id=nid) break;elsep=p->next;return p; void Link:linkView(

27、) / 顯示鏈表數(shù)據(jù) (Node *p=head;while(p) (cout<<”實(shí)驗(yàn)設(shè)備編號(hào):"<<p->id<<endl;cout<<"名稱:"<<p->name<<endl;cout<<"類型:"<<p->type<<endl;cout<<"所屬實(shí)驗(yàn)室:"<<p->suoshushiyanshi<<endl;cout<<"購買時(shí)間

28、:"<<p->buytime<<endl;cout<<"價(jià)格:"<<p->price<<endl;cout<<"庫存量:"<<p->amount<<endl;cout<<"生產(chǎn) 日期:"<<p->shengchanriqi<<endl;cout<<"使用壽命:"<<p->shiyongshouming<<end

29、l;cout<<"重量:"<<p->weight<<endl;cout<<"*”<<endl;p=p->next;Node* Link:getHead()(return head;/類Shebei,用于包裝Link類及菜單操作class Shebei(private:Link clink;/Link 對(duì)象成員bool k;/記錄數(shù)據(jù)是否被修改public:Shebei();void ShebeiClear();void ShebeiInsert();void ShebeiDelete();vo

30、id ShebeiFind();void ShebeiModify();void ShebeiView();void ShebeiLoad();void ShebeiSave();void Exit();/ 退出程序void showMenu();/顯示菜單void showTip();/顯示操作提示void doMenu(char n);/執(zhí)行相應(yīng)菜單項(xiàng)功能;Shebei:Shebei()Link();/調(diào)用成員對(duì)象的構(gòu)造函數(shù)ShebeiLoad();/R文件中讀取數(shù)據(jù),創(chuàng)建鏈表 k=false;/設(shè)置數(shù)據(jù)被修改void Shebei:ShebeiClear() /青空設(shè)備記錄clink.l

31、inkClear();cout<<"成功清空設(shè)備信息記錄!"<<endl;void Shebei:ShebeiInsert() /插入設(shè)備記錄Node *p=new Node();H.cout<<"請(qǐng)輸入設(shè)備編號(hào) cin>>p->id;cout<<"請(qǐng)輸入名稱:"cin>>p->name;cout<<"請(qǐng)輸入類型:"cin>>p->type;cout<<"請(qǐng)輸入所屬實(shí)驗(yàn)室:"cin

32、>>p->suoshushiyanshi;cout<<"請(qǐng)輸入購買時(shí)間:"cin>>p->buytime;cout<<"請(qǐng)輸入價(jià)格:"cin>>p->price;cout<<"請(qǐng)輸入庫存量:"cin>>p->amount;cout<<"請(qǐng)輸入生產(chǎn)日期:"cin>>p->shengchanriqi;cout<<"請(qǐng)輸入設(shè)備重量:"cin>>

33、;p->weight;if(!clink.linkFind(p->id) /判斷設(shè)備信息是否存在clink.linkInsert(p);k=true;elsecout<<"設(shè)備編號(hào)為"<<p->id<<"的的設(shè)備已存在,插入失敗! "<<endl; void Shebei:ShebeiDelete() /刪除設(shè)備記錄long i;if(clink.linkIsEmpty()/ 鏈表為空的情況cout<<"沒有設(shè)備記錄!"<<endl;elseco

34、ut<<"請(qǐng)輸入設(shè)備編號(hào)H.cin>>i;if(clink.linkDelete(i) (cout<<"成功刪除編號(hào)為"<<i<<"的實(shí)驗(yàn)記錄! "<<endl; k=true;)elsecout<<"沒有找到編號(hào)為"<<i<<"的設(shè)備! "<<endl;)void Shebei二ShebeiFind() /鷹找某編號(hào)的設(shè)備記錄(long n;Node *p;if(clink.linkI

35、sEmpty()/ 鏈表為空的情況cout<<"沒有設(shè)備記錄! "<<endl;else(cout<<"請(qǐng)輸入要查找設(shè)備的編號(hào):"cin>>n;p=clink.linkFind(n);/獲得找到的結(jié)點(diǎn)的指針if(p) 指針值不為NULL時(shí)(cout<<”實(shí)驗(yàn)設(shè)備編號(hào):"<<p->id<<endl;cout<<“名稱:"<<p->name<<endl;cout<<“類型:"<&l

36、t;p->type<<endl;cout<<”所屬實(shí)驗(yàn)室:"<<p->suoshushiyanshi<<endl;cout<<“購買時(shí)間:"<<p->buytime<<endl;cout<<“價(jià)格:"<<p->price<<endl;cout<<“庫存量:"<<p->amount<<endl;cout<<“生產(chǎn) 日期:“<<p->shengc

37、hanriqi<<endl;cout<<“使用壽命:"<<p->shiyongshouming<<endl;cout<<“重量:"<<p->weight<<endl;else游旨針值為NULL時(shí) cout<<"沒有找到編號(hào)為"<<n<<"的設(shè)備記錄! "<<endl;)void Shebei二ShebeiModify() 修改某編號(hào)的設(shè)備信息(long n;Node *p;if(clink.l

38、inkIsEmpty()/ 鏈表為空的情況 cout<<"沒有設(shè)備記錄! "<<endl;else(cout<<”請(qǐng)輸入要修改設(shè)備的編號(hào):"cin>>n;p=clink.linkFind(n);/獲得找到的結(jié)點(diǎn)的指針 if(p) 指針值不為NULL時(shí) (cout<<”實(shí)驗(yàn)設(shè)備編號(hào):"<<p->id<<endl;cout<<“名稱:"<<p->name<<endl;cout<<“類型:"<

39、<p->type<<endl;cout<<”所屬實(shí)驗(yàn)室:"<<p->suoshushiyanshi<<endl;cout<<“購買時(shí)間:"<<p->buytime<<endl;cout<<“價(jià)格:"<<p->price<<endl;cout<<“庫存量:"<<p->amount<<endl;cout<<“生產(chǎn) 日期:“<<p->shen

40、gchanriqi<<endl;cout<<“使用壽命:"<<p->shiyongshouming<<endl;cout<<“重量:"<<p->weight<<endl;cout<<"請(qǐng)輸入新的設(shè)備信息"<<endl;cout<<"請(qǐng)輸入設(shè)備編號(hào):"cin>>p->id;cout<<"請(qǐng)輸入名稱:"cin>>p->name;cout<

41、;<"請(qǐng)輸入類型:"cin>>p->type;cout<<”請(qǐng)輸入所屬實(shí)驗(yàn)室:"cin>>p->suoshushiyanshi;cout<<"請(qǐng)輸入購買時(shí)間:"cin>>p->buytime;cout<<"請(qǐng)輸入價(jià)格:"cin>>p->price;cout<<"請(qǐng)輸入庫存量:"cin>>p->amount;cout<<"請(qǐng)輸入生產(chǎn)日期:&qu

42、ot;cin>>p->shengchanriqi;cout<<"請(qǐng)輸入設(shè)備重量:"cin>>p->weight;else游旨針值為NULL時(shí)cout<<"沒有找到編號(hào)為"<<n<<"的設(shè)備記錄! "<<endl;void Shebei:ShebeiView() /® 示所有設(shè)備的記錄if(clink.linkIsEmpty()cout<<"沒有設(shè)備記錄! "<<endl;elseclin

43、k.linkView();void Shebei:ShebeiLoad()/A文件中讀入數(shù)據(jù),創(chuàng)建鏈表Node *p;long nid;ifstream infile("data.txt");if(!infile)cerr<<"錯(cuò)誤:數(shù)據(jù)文件不能打開!n"elsewhile(infile>>nid) /讀取客戶,直到讀空(p=new Node();p->id=nid;infile>>p->name>>" "/讀取名稱infile>>p->type>&g

44、t;" "infile>>p->suoshushiyanshi>>""infile>>p->buytime>>" "infile>>p->price>>" "infile>>p->amount>>" "infile>>p->shengchanriqi>>“"infile>>p->weight>>"

45、"clink.linkInsert(p);infile.close(); /關(guān)閉文件void Shebei:ShebeiSave() /等數(shù)據(jù)保存到文件(Node *p=clink.getHead();ofstream outfile("data.txt");if(!outfile)cerr<<"錯(cuò)誤:數(shù)據(jù)文件不能打開!n"else(while(p)(<<p->suoshushiyanshi“<<p->amount<<”outfile<<p->id<<&q

46、uot; "<<p->name<<" "<<p->type<<”<<" "<<p->buytime<<" "<<p->price<<“<<p->shengchanriqi<<""<<p->weight<<" "<<endl;p=p->next;k=false;cout<&l

47、t;”保存成功! "<<endl;void Shebei:Exit()(char s='Y'if(k) 判斷數(shù)據(jù)是否修改(cout<<"數(shù)據(jù)已經(jīng)改變,是否保存? (y/n):" cin>>s;if(s='y'|s='Y')ShebeiSave();)cout<<"已安全退出,"system("pause");exit(0);) void Shebei:showMenu()cout<<"tt*”<<endl;cout<<"tt*&q

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲(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)論