版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數(shù)據(jù)結構課程設計報告設計題目:文具店的貨品管理專 業(yè)班 級學 生學 號 E208140282009-20109年第2學期一、設計目的1、能根據(jù)實際問題的具體情況,結合數(shù)據(jù)結構課程中 的基本理論和基本算法,分析并正確確定數(shù)據(jù)的邏輯結構, 合理地選擇相應的存儲結構,并能設計出解決問題的有效算 法。2、提高程序設計和調試能力。學生通過上機實習,驗 證自己設計的算法的正確性。學會有效利用基本調試方法, 迅速找出程序代碼中的錯誤并且修改。3、初步掌握軟件開發(fā)過程中問題分析、系統(tǒng)設計、程 序編碼、測試等基本方法和技能。4、訓練用系統(tǒng)的觀點和軟件開發(fā)一般規(guī)范進行軟件開 發(fā),培養(yǎng)軟件工作者所應具備的科學的工作
2、方法和作風。5、培養(yǎng)根據(jù)選題需要選擇學習書籍,查閱文獻資料的 自學能力。二、設計內容文具店的貨品管理在文具店的日常管理經(jīng)營過程中,存在對各種文具管理問 題。當庫存文具不足或缺貨時,需要進貨。日常銷售時,需 要出庫。當盤點貨物時,需要查詢貨物的信息。請根據(jù)這些 要求編寫軟件完成庫存文具的管理功能。文具信息可以用表1和表2來表示表1文具名稱文具類別文具數(shù)量鋼筆1400日記本22000計算器350表2文具類別號文具類別名1文具2紙張3工具三、源程序#include#include#include#include#include#define ERROR 0#define OK 1#define OV
3、ERFLOW 0typedef struct char name10; char lb10; int count;datatype;typedef struct node datatype name; struct node *next;listnode,*linklist;int menu_select();int linklist_init(linklist &head);int linklist_create(linklist &head); int linklist_insert(linklist &head);int linklist_find(linklist head);int
4、linklist_delete(linklist &head); int linklist_print(linklist head);int menu_select()int sn; printf(n xf/n文具店商品管理n);printf(=printf(1.商店商品的初始狀態(tài)n);printf(2.商品的存入n);printf(3.商品的查詢n);printf(4.商品的賣出n);printf(5.商品的輸出檢索n);printf(6.退出管理系統(tǒng)n);printf(n=n);printf( 選擇 1-6:);for(;) scanf(%d,&sn); if(sn6) printf( 輸
5、入錯誤,從新選擇 (1-6):); else break;return sn;/初始化/商品的創(chuàng)建int linklist_init(linklist &head)head=(linklist)malloc(sizeof(listnode); if(!head)exit(OVERFLOW); head-next=NULL; return OK;int linklist_create(linklist &head)linklist p,rear;int flag=0;rear=head;while(flag=0) p=(linklist)malloc(sizeof(listnode); prin
6、tf(n 商店初始商品文具名稱 :); ;printf(n 初始文具數(shù)量 :); cinp-name.count;printf(n 初始文具類別 :); cinp-name.lb;p-next=NULL; rear-next=p; rear=p; printf( 結束初始化嗎?( 1/0):); scanf(%d,&flag);rear-next=NULL;return OK;int linklist_insert(linklist &head) 文具)linklist p,p1,p2;p2=head;p2=p2-next; p=(linklist)malloc(s
7、izeof(listnode); printf( 輸入要存貨的文具名稱 :); ; printf(n 存貨的文具數(shù)量 :); cinp-name.count; printf(n 存貨的文具類別 :); cinp-name.lb;while(p2!=NULL) if(strcmp(,)= p2-name.count+=p-name.count; printf(n 存貨成功 !); return OK;elsep1=p2;p2=p2-next;if(p2=NULL)p1-next=p; p-next=NULL; printf
8、(n 存貨成功 !);return ERROR;int linklist_delete(linklist &head) linklist p,t;t=head;/向商店存貨(存入/商店賣出文具t=t-next;p=(linklist)malloc(sizeof(listnode);printf( 賣出商品的文具名稱 :);;printf(n 想賣出多少件 :);cinp-name.count;while(t!=NULL) if(strcmp(,)=0) if(t-name.count=0)printf(n 此類商品已經(jīng)銷售
9、完。 );return ERROR;elseif(t-name.countname.count)printf(n 現(xiàn)存商品容量不足,無法賣出。 ); return ERROR;else t-name.count-=p-name.count; printf(n 此類文具賣出成功 !); return OK;elset=t-next;if(t=NULL)printf(n 商店沒有此類文具。 );return ERROR;/輸出int linklist_print(linklist head)linklist p1;p1=head;p1=p1-next;printf(文具名稱文具類別文具數(shù)量n);w
10、hile(p1!=NULL) printf(%4st%14st%20d,,p1-name.lb,p1-name.count); p1=p1-next;printf(n);return OK;int linklist_find(linklist head)/查找linklist p,p1,p2;p1=p2=head;p2=p2-next; p=(linklist)malloc(sizeof(listnode);printf(n 輸入要查找的文具名稱 :);;while(p2!=NULL) if(strcmp(,p-nam
11、)=0) printf(n 查找成功 ,輸出如下: n); printf( 文具名稱文具類別文具數(shù)量 n);printf(%4st%14st%20d,,p2-name.lb,p2-name.count); return OK;else p2=p2-next;printf(n 查找不成功 !);return ERROR;void main()linklist head;linklist_init(head);for(;)switch(menu_select()case 1:linklist_create(head); break;case 2:linklist
12、_insert(head); break;case 3: linklist_find(head); break;case 4:linklist_delete(head); break;case 5:linklist_print(head); break;case 6:printf(n 謝謝光臨 ,歡迎回顧! break;/創(chuàng)建/存貨/查詢文具/賣出文具/檢索文具n);四、 調試分析調試的過程中, 對程序做了幾點改進,增加了程序的容錯能力,不論用戶輸入什么內容,程 序都能安全檢查。五、測試結果進入演示程序后,即顯示主界面為:態(tài) 始 索初 8 的入詢岀出系 品存is笊Btw 店品品品品出 商商商商
13、黒 12 3 4 5 6根據(jù)提示,用戶輸入選項玄具店商品胃理1、進入商店商品的初始化狀態(tài)態(tài)狀 始 斎 初 檢統(tǒng) 的入詢生岀系 品存查盍理的管 店品品品品出 商商商商商退 1-23456輸入表1和表2信息其中:結束初始化嗎?(1/0)選擇0代表不結束,即繼續(xù)輸入商品信息,選擇1代表,商品信息 輸入結束2、商品的存入(例:文具店需進鋼筆300,橡皮 200 )C : DacuAent s and Sett ingsXAdMinist rator面ElDetm至2. qx亡態(tài)始初 的入詢岀岀條 品存查 集饋笊笊管店品品品品岀 商商商商一 12 3 4 5 6 |. fJJBjfm M|M24丈具店商
14、品筲1申態(tài) 狀 始 初 的入詢出品存杏秦 店品品品商商商商初始之畀類別工具結束初妬化嗎? (1/0)=1文具店商昂管I里A姑 索 初 橙貌 的人詢出岀系 品存杳蠱理 店品品品品出 商商商商商退翳i-g斬入妾存賞的文兵茗稱:橡哎 存貨的文具數(shù)量譚恥存背的文具類別:文具存尺成功f文具店商品營理這里以鋼筆為例)a3、商品的查詢(查詢一種商品的信息 初始化時,鋼筆400 ;后進貨,鋼筆 300;文具店現(xiàn)有存貨為:鋼筆700;初 畫 的入啊出剳 品存自賣si連 商的旳的的砂呂 店品品品品出 商商商商 1 2 3 4 5 61 -商店莆品的衲始狀態(tài)址:文貝店商品菅理諭丸要查找妁丈賓書稱擁:筆査找成功輸出如
15、下:以鋼筆為例:鋼筆現(xiàn)存700;要賣出 200態(tài) 始 索初 韓 的人詢岀出系 器吉盍理 店品品品品出 商商商商商退 12 3 4 5 64、商品的賣出g遅名稱交具類別文具數(shù)量鋼雪文具700文貝店商品詐選擇16:4夾口商品的文具名稱誌弾想丟出參少件:西。此類文具賣岀咸功?剩余鋼筆 500卜壬 *C; Docuent s and Sett ingsX&dMinist ralorXXZXDelvugX2, ex&X商品的查詢4-商品的勇tH 軋商品笊輪岀檢索 氛退生管理爲統(tǒng)選擇iz輸人要杳找的文具名褓:鋼筆文具教量5BB查找成功,輸出如下I衣長宅稱文詈類別鋼維文具袁具店商品t態(tài)初的入詢品存杳一賣輸理 店品品品品出 商商商商商退1 2 3 - 4* 5 5、商品的輸出檢索可以查看現(xiàn)庫存商品的信息文具店商品菅理3文具教呈20B050BBB態(tài)初 怪統(tǒng) 的入詢岀岀糸 品存查店品品品品出 商商商商 12 3 4 5 6口刀具具張具-4 丈文歩工丈5-Y稱名S 選文的IB1計樣1名本器態(tài) 狀始 盍 初 檢 的入詢出出 哮査盍 店品品品品 商商商商商 12 3 4 56、退出管理系統(tǒng)L -: racuMenT s and Sett incsX&dBinistrstorXJ2XDatnicX2. exe態(tài)初 怪統(tǒng)th入詢岀岀糸品存查店品品品品出商商商商1 2 J- 4 S 6陸擇1-打謝光臨歡迎回顧!
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二年級道德與法治上冊 第一單元 3《假期安全真重要》教案4 浙教版
- 八年級英語下冊 Unit 1 What's the matter教案設計(pdf)(新版)人教新目標版
- 2024-2025學年新教材高中數(shù)學 第1章 空間向量與立體幾何 1.4 空間向量的應用 1.4.1 第2課時 空間向量與垂直關系教案 新人教A版選擇性必修第一冊
- 八年級政治上冊 第四單元 9.3 平等尊重你我他教案 新人教版
- 2024-2025學年高中物理 第7章 分子動理論 4 溫度和溫標教案1 新人教版選修3-3
- 英語 制作課件
- 租地到期收購地面上的房屋合同(2篇)
- 造船廠檢修勞務派遣合同(2篇)
- 托爾斯泰課件完美
- 地震說課稿課件
- 江蘇省泰州市靖江實驗學校2022-2023學年七年級上學期期中生物試卷(解析版)
- 西師大版2023-2024學年五年級數(shù)學上冊期末測試卷含答案
- 小學綜合實踐活動《水果拼盤》教學設計
- 手術室耗材的管理
- 單片機原理及應用 第3版 課件第5章 并行口及應用
- 師范生生涯發(fā)展
- 建筑地基基礎檢測規(guī)范DBJ-T 15-60-2019
- 小學生急救知識主題教育
- 高中物理必修一前兩章測試題(含答案)
- TB-T 3356-2021鐵路隧道錨桿-PDF解密
- 《印學話西泠》教學設計
評論
0/150
提交評論