商品庫存管理系統(tǒng)需求分析_第1頁
商品庫存管理系統(tǒng)需求分析_第2頁
商品庫存管理系統(tǒng)需求分析_第3頁
商品庫存管理系統(tǒng)需求分析_第4頁
商品庫存管理系統(tǒng)需求分析_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上 商 品 庫 存 管 理 程序設(shè)計報告 課程名稱:C語言課程設(shè)計程序設(shè)計 班 級: 電 氣 1401 組 長: 王闖 小組成員:王闖 孟寧 夏涵 胡琛 謝俊良 韓夢成 代仁旺 指導(dǎo)老師: 伊蕓蕓 專心-專注-專業(yè)目錄第1章 引言 (1)第2章 總體設(shè)計 (2) 2.1系統(tǒng)的需求分析 (2) 2.2 系統(tǒng)的功能 (2) 2.3 主要用到的函數(shù) (6)第3章 詳細(xì)設(shè)計 (7) 3.1 代碼以及對應(yīng)的備注(9)第4章 界面設(shè)計及代碼 (17) 4.1 主界面 (17) 4.2錄入商品信息 (18) 4.3查看商品信息 (20) 4.4刪除商品信息 (22) 4.5修改商品信

2、息 (24) 4.6查詢單個商品信息(30) 4.7商品庫存系統(tǒng)退出(32) 4.8其他字符輸入管理(32)第5章 調(diào)試 (34) 5.1測試目的(34) 5.2功能測試(34)第6章 總結(jié)與展望 (35)附錄 (36) 附錄A小組成員及其分工情況(36)參考文獻(37) 第1章 引言 商品經(jīng)濟是社會經(jīng)濟的重要組成部分,而作為商品經(jīng)濟最基本的商品,由于其種類繁多,因此其商品管理本身就已經(jīng)比較復(fù)雜,何況作為商品管理最重要的庫存管理的復(fù)雜性, 可想而知。因此一個完善的商品庫存管理系統(tǒng)是一個企業(yè)不可缺少的部分,它的內(nèi)容對于企業(yè)的決策者和管理者來說都至關(guān)重要,所以商品庫存管理系統(tǒng)應(yīng)該能夠為用戶提供充足

3、的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理倉庫中的各種物資設(shè)備,這種管理方式存在著許多缺點,如:效率低、另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,其強大的功能已為人們深刻認(rèn)識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對物資信息進行管理,具有手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套商

4、品庫存管理軟件成為很有必要的事情。第2章 總體設(shè)計2.1 系統(tǒng)的需求分析 伴隨著計算機的發(fā)展及網(wǎng)絡(luò)技術(shù)的應(yīng)用,我們正在快速地向信息化社會邁進,信息自動化的作用變得越來越大。 在倉庫管理領(lǐng)域中,倉庫管理的規(guī)模正在不斷擴大,倉庫管理的復(fù)雜度正在急劇地增加,有關(guān)倉庫管理的各種信息量也成倍地增長。面對龐大的信息量,就需要有商品庫存管理系統(tǒng)來提高庫存管理工作的效率。通過這樣的系統(tǒng),可以方便的查詢、添加和修改商品及供貨商的基本情況,掌握入庫出庫的各種情況,實現(xiàn)信息的規(guī)范管理、科學(xué)統(tǒng)計和快速查詢,從而減少管理方面的工作量,同時避免由于人為因素造成數(shù)據(jù)遺漏和誤報等。2.2 系統(tǒng)功能 本系統(tǒng)主要模塊為商品信息管

5、理。倉庫管理模塊通過此模塊來管理商品信息,包括瀏覽、錄入、查詢、修改和刪除功能。 2.2.1 錄入功能 錄入功能是向系統(tǒng)中輸入數(shù)據(jù)的一個功能??梢园焉唐返拿Q、編號以及數(shù)據(jù)錄入系統(tǒng)中。流程圖如圖2.1所示 圖 2.1 入庫流程圖 2.2.2 查詢功能 查詢功能是對于庫存中的產(chǎn)品的數(shù)據(jù)進行查詢。流程圖如圖2.2所示 圖2.2 查詢功能流程圖 首先輸入一個商品代碼i,然后對i進行判斷,如果i正確也就是存在,那么i,執(zhí)行輸出該商品各信息的步驟。如果i不存在i,那么執(zhí)行沒有該商品這個步驟。最后進行循環(huán)該步驟查詢多個商品. 2.2.3 修改功能 修改功能是應(yīng)用于對商品信息的修改。出庫后的時候?qū)ι唐穾齑鏀?shù)

6、目的管理;還有對于一些錯誤信息的修改。具體流程如圖2.3所示 圖 2.3 修改功能流程圖 2.2.4 刪除功能 刪除功能主要應(yīng)用于把不需要的商品進行下架處理。流程圖如圖2.4所示 圖2.1 刪除功能流程圖 剛開始定義兩個變量,然后與商品的屬性值進行比較,通過循環(huán)達到我們所需的條件,再根據(jù)這些與錄入的商品信息進行比較,商品信息中有我們要找的商品最后進行刪除,沒有該商品信息的則退出。2.3 主要用到的函數(shù) 1. int main(void);主函數(shù) 2.void add_goods(information im , int geshu);錄入商品信息 3.check_goods(informati

7、on im);查詢并顯示所有商品 4.menu(); 列出對商品所要執(zhí)行的操作:錄入、查詢、刪除、修改 5.void del_goodsinfor(information im ,int goods_number); 對商品進行刪除操作 6. void check_oneGoods(information im , int goods_number); 對商品按編號進行查詢 7. void menu1();列出對商品信息修改操作:名稱、編號、數(shù)目 8. void change_goodsinfor(information im ,int goods_number) 對商品信息進行修改 第三章

8、詳細(xì)設(shè)計3.1 代碼以及對應(yīng)的備注#include<stdio.h>#define max 100/*給定結(jié)構(gòu)體數(shù)組的最大值*/int size = 0;/*顯示商品屬性的信息*/typedef struct goodsInformation char goods_name20;/*商品的名字*/ int goods_number;/*商品的編號*/ int goods_count;/*商品的數(shù)目*/information;/* * Function:void add_goods(information im, int geshu) * Description:存儲商品的信息 *

9、Called By: * int main(void) * Input:用戶根據(jù)相應(yīng)的提示,輸入商品信息 * */void add_goods(information im, int geshu) int i; int count = size + geshu; /*目的是實現(xiàn)商品的多次輸入*/ for(i = size; i < count; i+) printf("請錄入商品的名稱:n"); scanf("%s",imi.goods_name); printf("請錄入商品的編號:n"); scanf("%d&qu

10、ot;,&imi.goods_number); printf("請錄入商品的數(shù)目:n"); scanf("%d",&imi.goods_count); size+; /*end of for*/ printf("添加成功!nn"); /* * Function:void check_goods(information im) * Description:查詢所有的商品并顯示出來 * Called By: * int main(void) * Output:顯示所有的商品 * */void check_goods(inf

11、ormation im) int i; /*目的是實現(xiàn)輸入多個商品*/ for(i = 0; i < size; i+) printf("庫存的商品有:"); printf("商品的名稱=%st商品的編號=%dt商品的數(shù)目=%dn", imi.goods_name,imi.goods_number,imi.goods_count); /*end of for*/ /* * Function:void menu() * Description:列出對商品所要執(zhí)行的操作:錄入、查詢、刪除、修改等。 * Called By: * int main(voi

12、d) * Output:列出對商品所要執(zhí)行的操作:錄入、查詢、刪除、修改 * */void menu() printf("nttt菜單欄nntt1.錄入tt2.查看nntt3.刪除tt4.修改nntt5.查詢tt退出請按:-1nn");/* * Function:void del_goodsinfor(information im,int goods_number) * Description:刪除對應(yīng)編號的商品信息。 * Called By: * int main(void) * Output:輸出提示信息 * */ void del_goodsinfor(informa

13、tion im,int goods_number) int i,j; /*找到給定的編號,并刪除對應(yīng)編號的信息*/ for(i = 0; i < size; i+) /*通過比較找到對應(yīng)編號,然后刪除*/ if(imi.goods_number = goods_number) /*通過移動數(shù)組元素來刪除信息*/ for(j = i; j < size - 1; j+) imj = imj+1; /*end of for*/ size-; printf("刪除成功!n"); return ; /*end of if*/ /*end of for*/ printf(

14、"沒有該商品n");/* * Function:void check_oneGoods(information im, int goods_number) * Description:根據(jù)相應(yīng)的編號,查詢一個商品的信息并顯示出來 * Called By: * int main(void) * Output:一個的商品的信息 * */void check_oneGoods(information im, int goods_number) int i; /*是實現(xiàn)一個商品的查詢*/ for(i = 0; i < size; i+) if(imi.goods_number

15、 = goods_number) printf("商品的名稱=%st商品的編號=%dt商品的數(shù)目=%dn", imi.goods_name,imi.goods_number,imi.goods_count); return ; /*end of if*/ /*end of for*/ printf("沒有該商品n");/* * Function:void menu1() * Description:列出對商品的屬性所要執(zhí)行的操作:名稱、編號、數(shù)目等。 * Called By: * void change_goodsinfor(information im

16、,int goods_number) * Output:列出對商品所要執(zhí)行的操作:名稱、編號、數(shù)目 * */void menu1() printf("nttt選擇修改項nntt1.名稱tt2.編號nntt3.數(shù)目t4.修改所有信息nn");/* * Function:void change_goodsinfor(information im,int goods_number) * Description:根據(jù)相應(yīng)的編號,修改一個商品的信息 * Calls: void menu1() * Called By: * int main(void) * Output:對商品的修改信

17、息進行提示 * */ void change_goodsinfor(information im,int goods_number) int i, choose; /*找到對應(yīng)的編號,然后根據(jù)對應(yīng)編號的商品信息進行修改*/ for(i=0; i<size; i+) /*通過比較找到修改的編號,進行修改*/ if(imi.goods_number = goods_number) menu1(); /*列出對商品所要執(zhí)行的操作:名稱、編號、數(shù)目*/ printf("請選擇要修改的信息項目:"); scanf("%d",&choose); /*根

18、據(jù)用戶選擇進行相應(yīng)的修改*/ switch(choose) case 1: printf("請錄入修改的商品的名稱:n"); scanf("%s",imi.goods_name); printf("修改成功!n"); break; case 2: printf("請錄入修改的商品的編號:n"); scanf("%d",&imi.goods_number); printf("修改成功!n"); break; case 3: printf("請錄入修改的商品的數(shù)

19、目:n"); scanf("%d",&imi.goods_count); printf("修改成功!n"); break; case 4: printf("請錄入修改的商品的名稱:n"); scanf("%s",imi.goods_name); printf("請錄入修改的商品的編號:n"); scanf("%d",&imi.goods_number); printf("請錄入修改的商品的數(shù)目:n"); scanf("%

20、d",&imi.goods_count); printf("修改成功!n"); break; default: printf("輸入錯誤!"); /*end of switch*/ return; /*end of if*/ /*end of for*/ printf("沒有該商品n");/* * Function:int main(void) Description:主函數(shù) * Calls: * 1.void add_goods(information im, int geshu); * 2.check_goods

21、(information im); * 3.menu(); * 4.void del_goodsinfor(information im,int goods_number); * 5. void check_oneGoods(information im, int goods_number); * 6. void change_goodsinfor(information im,int goods_number) * Input:用戶根據(jù)需要,輸入要選擇的功能的編號 * Output:查詢并顯示所有的商品 * */int main(void) information goodsmax; int

22、 geshu; int value = 0; int goods_id; while(value != -1)/當(dāng)用戶不想對商品進行操作時,按"-1"結(jié)束操作 menu();/列出操作:錄入、查詢、刪除、修改等 printf("請選擇所要執(zhí)行的操作:n"); scanf("%d",&value); switch(value)/根據(jù)value的值來執(zhí)行相應(yīng)的操作 case 1: printf("請輸入你要錄入商品種類的個數(shù):"); scanf("%d",&geshu); add_g

23、oods(goods, geshu);/商品的錄入 break; case 2: check_goods(goods);/所有商品的查詢 break; case 3: printf("請輸入要刪除的商品的編號:"); scanf("%d",&goods_id); del_goodsinfor(goods,goods_id);/刪除商品的信息 break; case 4: printf("請輸入要修改的商品的編號:"); scanf("%d",&goods_id); change_goodsinfor

24、(goods,goods_id);/修改商品的信息 break; case 5: printf("請輸入要查詢的商品的編號:"); scanf("%d",&goods_id); check_oneGoods(goods,goods_id);/商品信息的查詢 break; case -1: printf("退出!"); break; default: printf("輸入信息錯誤!"); /*end of switch*/ /*end of while*/ 第四章 平面設(shè)計及代碼 4.1 主界面 進入后主界面

25、后的界面如圖4.1所示。 圖4.1 主界面主界面所用到的代碼: menu();/列出操作:錄入、查詢、刪除、修改等 printf("請選擇所要執(zhí)行的操作:n"); scanf("%d",&value); switch(value)/根據(jù)value的值來執(zhí)行相應(yīng)的操作 case 1: printf("請輸入你要錄入商品種類的個數(shù):"); scanf("%d",&geshu); add_goods(goods, geshu);/商品的錄入 break; case 2: check_goods(goods

26、);/所有商品的查詢 break; case 3: printf("請輸入要刪除的商品的編號:"); scanf("%d",&goods_id); del_goodsinfor(goods,goods_id);/刪除商品的信息 break; case 4: printf("請輸入要修改的商品的編號:"); scanf("%d",&goods_id); change_goodsinfor(goods,goods_id);/修改商品的信息 break; case 5: printf("請輸入要

27、查詢的商品的編號:"); scanf("%d",&goods_id); check_oneGoods(goods,goods_id);/商品信息的查詢 break; case -1: printf("退出!"); break; default: printf("輸入信息錯誤!"); 4.2錄入商品信息 錄入商品信息時,首先提示錄入商品的種類個數(shù),選擇過后,然后進行商品信息的名稱、編號、數(shù)量的錄入,最后提示添加成功。如圖4.2所示。 圖4.2 錄入信息這個過程用到的代碼:void add_goods(informati

28、on im, int geshu) int i; int count = size + geshu; /*目的是實現(xiàn)商品的多次輸入*/ for(i = size; i < count; i+) printf("請錄入商品的名稱:n"); scanf("%s",imi.goods_name); printf("請錄入商品的編號:n"); scanf("%d",&imi.goods_number); printf("請錄入商品的數(shù)目:n"); scanf("%d",

29、&imi.goods_count); size+; /*end of for*/ printf("添加成功!nn"); 4.3 查看商品信息 當(dāng)查看商品信息時,顯示的是庫存里的所有商品。當(dāng)沒有商品時則什么都不顯示,直接繼續(xù)下一步操作(如圖4.3.1所示);有商品的時候 ,則全部商品都顯示出來。如圖4.3.2所示。 圖4.3.1 查看商品信息1 圖4.3.2 查看商品信息2這個過程用到的代碼:void check_goods(information im) int i; /*目的是實現(xiàn)輸入多個商品*/ for(i = 0; i < size; i+) print

30、f("庫存的商品有:"); printf("商品的名稱=%st商品的編號=%dt商品的數(shù)目=%dn", imi.goods_name,imi.goods_number,imi.goods_count); /*end of for*/ 4.4 刪除商品信息 刪除商品信息時,提示刪除該商品的編號是什么。當(dāng)刪除的商品在庫存里沒有時,提示沒有該商品(如圖4.4.1所示);當(dāng)刪除的商品在庫存里有的時候,則顯示刪除成功。如圖4.4.2所示。 圖 4.4.1 刪除商品信息1 圖4.4.2 刪除商品信息2這個過程用到的代碼:void del_goodsinfor(inf

31、ormation im,int goods_number) int i,j; /*找到給定的編號,并刪除對應(yīng)編號的信息*/ for(i = 0; i < size; i+) /*通過比較找到對應(yīng)編號,然后刪除*/ if(imi.goods_number = goods_number) /*通過移動數(shù)組元素來刪除信息*/ for(j = i; j < size - 1; j+) imj = imj+1; /*end of for*/ size-; printf("刪除成功!n"); return ; /*end of if*/ /*end of for*/ pri

32、ntf("沒有該商品n");4.5 修改商品信息 修改商品信息時,輸入一個商品的編號,當(dāng)庫存里沒有該商品時,則提示沒有該商品(如圖4.5.1所示);當(dāng)庫存里有該商品時,則提示修改商品的什么內(nèi)容。修改內(nèi)容分別為名稱、編號、數(shù)目以及所有信息。如圖4.5.2所示。 圖4.5.1 修改商品信息1 圖 4.5.2 修改商品信息2選擇修改的信息項目后,提示輸入對應(yīng)的商品信息內(nèi)容,輸入后,提示修改成功。如圖4.5.3所示。 圖4.5.3 修改商品信息3這個過程用到的代碼:void menu1() printf("nttt選擇修改項nntt1.名稱tt2.編號nntt3.數(shù)目t4

33、.修改所有信息nn");/* * Function:void change_goodsinfor(information im,int goods_number) * Description:根據(jù)相應(yīng)的編號,修改一個商品的信息 * Calls: void menu1() * Called By: * int main(void) * Output:對商品的修改信息進行提示 * */ void change_goodsinfor(information im,int goods_number) int i, choose; /*找到對應(yīng)的編號,然后根據(jù)對應(yīng)編號的商品信息進行修改*/ f

34、or(i=0; i<size; i+) /*通過比較找到修改的編號,進行修改*/ if(imi.goods_number = goods_number) menu1(); /*列出對商品所要執(zhí)行的操作:名稱、編號、數(shù)目*/ printf("請選擇要修改的信息項目:"); scanf("%d",&choose); /*根據(jù)用戶選擇進行相應(yīng)的修改*/ switch(choose) case 1: printf("請錄入修改的商品的名稱:n"); scanf("%s",imi.goods_name); pr

35、intf("修改成功!n"); break; case 2: printf("請錄入修改的商品的編號:n"); scanf("%d",&imi.goods_number); printf("修改成功!n"); break; case 3: printf("請錄入修改的商品的數(shù)目:n"); scanf("%d",&imi.goods_count); printf("修改成功!n"); break; case 4: printf("請

36、錄入修改的商品的名稱:n"); scanf("%s",imi.goods_name); printf("請錄入修改的商品的編號:n"); scanf("%d",&imi.goods_number); printf("請錄入修改的商品的數(shù)目:n"); scanf("%d",&imi.goods_count); printf("修改成功!n"); break; default: printf("輸入錯誤!"); /*end of sw

37、itch*/ return; /*end of if*/ /*end of for*/ printf("沒有該商品n");4.6 查詢單個商品信息 查詢單個商品信息時,輸入商品編號,如果沒有該商品,則提示沒有該商品(如圖4.6.1所示);如果有該商品,則直接顯示該商品的名稱、編號、以及數(shù)目。如圖4.6.2所示。 圖 4.6.1 查詢單個商品信息1 圖 4.6.2 查詢單個商品信息2這個過程用到的代碼:void check_oneGoods(information im, int goods_number) int i; /*是實現(xiàn)一個商品的查詢*/ for(i = 0; i < size; i+) if(imi.goods_number = goods_number) printf("商品的名稱=%st商品的編號=%dt商品的數(shù)目=%dn", imi.goods_name,imi.goods_number,imi.goods_count); retu

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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

提交評論