數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)書店倉庫管理系統(tǒng)_第1頁
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)書店倉庫管理系統(tǒng)_第2頁
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)書店倉庫管理系統(tǒng)_第3頁
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)書店倉庫管理系統(tǒng)_第4頁
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)書店倉庫管理系統(tǒng)_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計(jì)說明書 no.1 書店倉庫管理系統(tǒng)1. 課程設(shè)計(jì)目的本課程設(shè)計(jì)是為了配合數(shù)據(jù)結(jié)構(gòu)課程的開設(shè),通過設(shè)計(jì)一個完整的程序,使學(xué)生掌握數(shù)據(jù)結(jié)構(gòu)的應(yīng)用、算法的編寫、c語言的算法轉(zhuǎn)換成c程序并用tc上機(jī)調(diào)試的基本方法。加深對數(shù)據(jù)結(jié)構(gòu)的理解,提高算法設(shè)計(jì)的能力,鍛煉編程的能力。2. 設(shè)計(jì)方案論證2.1 設(shè)計(jì)目標(biāo)2.1.1 設(shè)計(jì)任務(wù)對稀疏矩陣進(jìn)行加減乘的運(yùn)算。當(dāng)輸入兩個矩陣時,可以對,即實(shí)現(xiàn)圖書入庫。當(dāng)有圖書賣出時,管理人員可查閱目前此類圖書的庫存情況,如圖書還有存量,管理人員可根據(jù)不同的出價調(diào)出相應(yīng)價的圖書,也可以根據(jù)市場波動對圖書做出相應(yīng)的調(diào)價。當(dāng)圖書出現(xiàn)問題,需要退給供貨商時,管理員可以把退還的

2、書名,數(shù)量,金額,記錄下來。當(dāng)月底或年終時,管理人員可以將各種圖書的出入庫,庫存金額整理出來,以便查看。2.1.2 設(shè)計(jì)要求該程序采用了線性鏈表的存儲結(jié)構(gòu)來設(shè)計(jì)以及實(shí)現(xiàn)對于書店倉庫的信息管理。在對鏈表的設(shè)計(jì)中具體采用了設(shè)置頭指針的單向鏈表的存儲方式。對于插入、查找、刪除等功能要求能按書名,編號進(jìn)行。圖書信息包括:圖書編號、書名、規(guī)格、數(shù)量、進(jìn)貨價、銷售價。2.2 需求分析書店倉庫管理系統(tǒng)要求實(shí)現(xiàn)許多功能,可遵循結(jié)構(gòu)化程序設(shè)計(jì)思想來進(jìn)行本系統(tǒng)的設(shè)計(jì)自頂向下,逐步細(xì)化,也就是將軟件設(shè)計(jì)任務(wù)劃分成許多容易解決的小的子任務(wù),即分解出許多子功能模塊進(jìn)行設(shè)計(jì)。本程序經(jīng)過分析分為以下幾個模塊:入庫操作、出庫

3、操作、退貨操作及進(jìn)行統(tǒng)計(jì)操作。 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.2本程序采用了線性鏈表的存儲結(jié)構(gòu)來設(shè)計(jì)以及實(shí)現(xiàn)對于書店倉庫的信息管理。在對鏈表的設(shè)計(jì)中具體采用了單向鏈表的存儲方式。用4個結(jié)構(gòu)數(shù)組(或鏈表)來存儲下述4類信息,每類信息的每條記錄用結(jié)構(gòu)類型自定義: 1圖書信息:圖書編號、書名、規(guī)格、數(shù)量、進(jìn)貨價、銷售價;2入庫信息:入庫編號、圖書編號、入庫圖書名、入庫數(shù)量、入庫價格、總價;3出庫信息:出庫編號、圖書編號、出庫圖書名、出庫數(shù)量、出庫價格、總價;4退貨信息:退貨編號、圖書編號、退還圖書名、退貨數(shù)量、退貨價格、總價;5. 對以上每類信息建立數(shù)據(jù)結(jié)構(gòu); 6. 對以上每類信息進(jìn)行插入操作

4、; 7. 對以上每類信息進(jìn)行刪除操作; 8. 對以上每類信息進(jìn)行修改操作;9. 對以上每類信息進(jìn)行查找操作(查找關(guān)鍵字用下劃線標(biāo)出); 10. 數(shù)據(jù)統(tǒng)計(jì):(1)統(tǒng)計(jì)入庫圖書的總數(shù)及總價; (2)統(tǒng)計(jì)出庫圖書的總數(shù)及總價;(3)統(tǒng)計(jì)倉庫中現(xiàn)有圖書的總數(shù)及總價格。2.3 設(shè)計(jì)方法2.3.1 數(shù)據(jù)設(shè)計(jì)(1)數(shù)據(jù)結(jié)構(gòu)的選擇選取動態(tài)數(shù)據(jù)結(jié)構(gòu),本系統(tǒng)是通過帶有頭指針的單向鏈表來完成的。動態(tài)存儲分配與釋放 申請存儲空間函數(shù)malloc( )函數(shù)首部原型為void * malloc(unsigned int size) 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.3 釋放存儲空間函數(shù)free( )函數(shù)首部原型為voi

5、d free(void*p)(2)數(shù)據(jù)類型的選擇struct book /*定義鏈表結(jié)構(gòu)體*/char p_num12; /*圖書編號*/char name12; /*書名*/char spec12; /*規(guī)格*/int amount; /*數(shù)量*/int price; /*進(jìn)貨價格*/int s_price; /*銷售價*/struct book *next; /*定義指針,指向后繼*/(3)變量函數(shù)說明init() 輸入圖書信息菜單menu() 選擇對圖書操作的菜單menu2() 返回選擇界面in_insert() 向入庫圖書中插入圖書信息in_modify() 修改入庫的圖書信息in_s

6、elect() 查找入庫圖書的信息in_delete() 刪除入庫圖書的信息out_insert() 向出庫圖書中插入圖書信息out_modify() 修改出庫圖書的信息 out_select() 查找出庫圖書的信息out_delete() 刪除出庫圖書的信息quit_insert() 向退貨圖書中插入圖書信息quit_modify() 修改退貨圖書的信息quit_select() 查找退貨圖書的信息 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.4quit_delete() 刪除退貨圖書的信息2.3.2 系統(tǒng)結(jié)構(gòu)圖系統(tǒng)整體結(jié)構(gòu)圖如下圖1所示開始輸出menuswitchn=0n=4n=3n=1n=2進(jìn)行

7、圖書統(tǒng)計(jì)操作進(jìn)行圖書退貨操作進(jìn)行圖書出庫操作進(jìn)行圖書入庫操作退出輸出統(tǒng)計(jì)結(jié)果圖1 系統(tǒng)整體結(jié)構(gòu)圖 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.52.3.3 模塊設(shè)計(jì)與介紹對本系統(tǒng)的功能進(jìn)行分析后可作如下的模塊化設(shè)計(jì)圖書入庫模塊的實(shí)現(xiàn):(1) 插入圖書信息:按順序?qū)⑷霂炀幪枴D書編號、入庫圖書名、入庫數(shù)量、入庫價格、總價依次輸入,并建立鏈表將其連接;(2) 刪除圖書信息:輸入圖書入庫編號,將其內(nèi)容刪除;(3) 修改圖書信息:輸入圖書入庫編號,修改其對應(yīng)信息的內(nèi)容;(4) 查找圖書信息:輸入圖書入庫編號,顯示其對應(yīng)信息。圖書出庫模塊的實(shí)現(xiàn):(1) 插入圖書信息:按順序?qū)⒊鰩炀幪?、圖書編號、出庫圖書名、出庫

8、數(shù)量、出庫價格、總價依次輸入,并建立鏈表將其連接;(2) 刪除圖書信息:輸入圖書出庫編號,將其內(nèi)容刪除;(3)修改圖書信息:輸入圖書出庫編號,修改其對應(yīng)信息的內(nèi)容;(4)查找圖書信息:輸入圖書出庫編號,顯示其對應(yīng)信息。圖書退貨模塊的實(shí)現(xiàn):(1)插入圖書信息:按順序?qū)⑼素浘幪?、圖書編號、退貨圖書名、退貨數(shù)量、退貨價格、總價依次輸入,并建立鏈表將其連接;(2)刪除圖書信息:輸入圖書退貨編號,將其內(nèi)容刪除;(3)修改圖書信息:輸入圖書退貨編號,修改其對應(yīng)信息的內(nèi)容;(4)查找圖書信息:輸入圖書退貨編號,顯示其對應(yīng)信息。圖書統(tǒng)計(jì)模塊的實(shí)現(xiàn):(1)統(tǒng)計(jì)入庫商品的總數(shù)及總價 (2)統(tǒng)計(jì)出庫商品的總數(shù)及總價

9、 (3)統(tǒng)計(jì)倉庫中現(xiàn)有商品的總數(shù)及總價格 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.62.3.4 主要模塊程序流程圖開始分配空間p=p-nextp=head yp-next!=nullp=null n y np-next=p1輸入圖書信息輸入圖書信息head=p1;head-next=null;結(jié)束圖2 關(guān)于insert()的流程圖 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.7 開始創(chuàng)建指針p=ihead輸入選擇書號p!=nullp=p-next n ystrcmp(p-num,s_num)=0 n y輸出信息結(jié)束圖3 關(guān)于select()的流程圖 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.82.4 算法設(shè)計(jì)2

10、.4.1 定義結(jié)構(gòu)體struct book char p_num12; char name12; char spec12; int amount; int price; int s_price; struct book *next; ;2.4.2模塊設(shè)計(jì)(1)插入信息模塊insert():首先需要建立一個鏈表。建立鏈表的具體操作就是逐一輸入各結(jié)點(diǎn)數(shù)據(jù),并建立其前后相鏈的關(guān)系。首先建立帶表頭結(jié)點(diǎn)的單鏈線性表p1,以及指針點(diǎn)p。用malloc函數(shù)開辟一個結(jié)點(diǎn),將表頭賦給p,使用if語句對表頭進(jìn)行判斷。如果表頭為空,即表示鏈表現(xiàn)在為空,通過printf語句提示需要往鏈表中輸入數(shù)據(jù),通過scanf語句

11、向鏈表中輸入圖書的信息賦給頭指針并使頭指針?biāo)赶虻暮罄^結(jié)點(diǎn)為空,然后返回上層菜單。如果表頭不為空,通過使用while循環(huán)語句將p指針依次往后移,直至后繼結(jié)點(diǎn)為空,即將指針p移到鏈表末端,在鏈表末端插入數(shù)據(jù),輸入數(shù)據(jù),并返回。int in_insert() struct in_book * p1,* p; p1=(struct in_book *)malloc(sizeof(struct in_book); p=ihead; if (p=null)/*開始沒有數(shù)據(jù)*/ printf(iuput the data of in bookn); 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.9printf(in

12、clude the rkbh,spbh,name,number,price,total_pricen); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-amount,&p1-price,&p1-t_price); ihead=p1; ihead-next=null; return 0; while(p-next!=null)/*把指針移到鏈表末端,在鏈表末端插入數(shù)據(jù)*/ p=p-next; p-next=p1; printf(iuput the datan); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&

13、p1-name,&p1-amount,&p1-price,&p1-t_price); p1-next=null; (2)查找信息模塊delete(): 首先定義一個數(shù)組以及指針p,將頭指針賦給p,通過循環(huán)語句while進(jìn)行循環(huán),判斷跳出循環(huán)語句為p不為空。在循環(huán)體內(nèi),首先判斷指針?biāo)赶虻闹凳欠駷樗檎业闹?,若是,則通過printf語句輸出所查找信息,若不是,則將指針賦給其后繼結(jié)點(diǎn)繼續(xù)比較,當(dāng)p指針?biāo)赶虻慕Y(jié)點(diǎn)為空,則跳出循環(huán),執(zhí)行printf語句提示用戶所查找的數(shù)據(jù)未找到。int in_select() char s_num12; struct in_book * p; p=ihead; 沈

14、陽 大 學(xué)課程設(shè)計(jì)說明書 no.10printf(iuput the select numn); scanf(%s,&s_num); while(p!=null) if (strcmp(p-num,s_num)=0) printf(the data you want is:n); printf( %s %s %s %d %d %dn, p-num,p-p_num,p-name,p-amount,p-price,p-t_price); return 0; p=p-next; printf(sorry! no num has foundn); (3)修改信息模塊 modify():首先定義一個數(shù)組

15、以及指針p,將頭指針賦給p,通過printf語句提示輸入所要修改的數(shù)據(jù)編號,再通過scanf語句輸入編號。然后使用if語句對指針?biāo)赶虻氖捉Y(jié)點(diǎn)進(jìn)行判斷,若該結(jié)點(diǎn)為空節(jié)點(diǎn),則通過printf語句提示該鏈表為空,無數(shù)據(jù)并返回上層菜單。若該結(jié)點(diǎn)有數(shù)據(jù),則將該結(jié)點(diǎn)的數(shù)據(jù)與所要修改數(shù)據(jù)的結(jié)點(diǎn)進(jìn)行比較,若為修改結(jié)點(diǎn),則將修改后的值賦給原值,實(shí)現(xiàn)修改并返回上層菜單,若不能找到修改結(jié)點(diǎn)則將指針向后繼結(jié)點(diǎn)移動,并繼續(xù)比較直至鏈表最尾端,若還未找到修改結(jié)點(diǎn),則通過printf語句提示用戶未能找到結(jié)點(diǎn)。int in_modify() char m_num12; struct in_book * p; p=ihead

16、; printf(iuput the modify numn); scanf(%s,&m_num);if (p=null)/*開始沒有數(shù)據(jù)*/ printf(sorry! no data can be foundn); 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.11 return 0; while(p!=null) if (strcmp(p-num,m_num)=0) printf(iuput the new data without numn); scanf(%s%s%d%d%d, &p-p_num,&p-name,&p-amount,&p-price,&p-t_price); printf(on

17、e data had modifiedn); return 0; p=p-next; printf(sorry! no num has foundn); (4)刪除信息模塊首先定義一個數(shù)組以及指針p1、p,將頭指針賦給p,輸入所要刪除數(shù)據(jù)的編號,對鏈表進(jìn)行判斷,若為空,則提示用戶沒有數(shù)據(jù)并返回上層菜單,若不為空,則對指針?biāo)赶虻臄?shù)據(jù)編號與所要刪除的數(shù)據(jù)編號進(jìn)行比較,若為該值,則進(jìn)行刪除。若不是,則將指針依次向后移動直至鏈表尾端,若還未找到要刪除數(shù)據(jù),使用printf語句提示用戶為找到數(shù)據(jù)。int in_delete() char d_num12; struct in_book * p1,* p

18、; p=ihead; printf(iuput the delete numn); scanf(%s,&d_num); if (p=null)/*開始沒有數(shù)據(jù)*/ printf(no data can be foundn); return 0; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.12if (strcmp(p-num,d_num)=0 & p-next=null)/*鏈表只有一個數(shù)據(jù),且是要刪除的*/ ihead=null; printf(one data has been deletedn); return 0; if (strcmp(p-num,d_num)=0 & p-next!=nul

19、l)/*要刪除的數(shù)據(jù)在鏈表的頭上*/ ihead=ihead-next;printf(one data has been deletedn); return 0; while(p-next!=null) p1=p-next; if (strcmp(p1-num,d_num)=0) p-next=p1-next; printf(one data has been deletedn); return 0; p=p-next; printf(sorry! no num has foundn); 2.5 源程序#include #include struct book char p_num12;cha

20、r name12; char spec12; int amount; int price; int s_price; struct book *next; ; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.13struct book *head;struct in_book char num12; char p_num12; char name12; int amount; int price; int t_price; struct in_book *next;struct in_book *ihead;struct out_book char num12; char p_num12; char na

21、me12; int amount; int price; int t_price; struct out_book *next; ;struct out_book *ohead;struct quit_book char num12; char p_num12; char name12; int amount; int price; int t_price; struct quit_book *next; ; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.14struct quit_book *qhead;int init() head=ihead=ohead=qhead=null;printf(*);

22、 printf(0: quitn); printf(1: iuput the information of in bookn); printf(2: iuput the information of out bookn); printf(3: iuput the information of quit bookn); printf(4: total the information of bookn);printf(*); int menu() printf(*);printf(1:insert datan); printf(2:delete datan); printf(3:modify da

23、tan); printf(4:select datan); printf(other to quitn); printf(*);int menu2() printf(*);printf(0: quitn); printf(1: iuput the information of in bookn); printf(2: iuput the information of out bookn); printf(3: iuput the information of quit bookn); printf(4: total the information of bookn); printf(*); 沈

24、 陽 大 學(xué)課程設(shè)計(jì)說明書 no.15int in_insert() struct in_book * p1,* p; p1=(struct in_book *)malloc(sizeof(struct in_book); p=ihead; if (p=null)/*開始沒有數(shù)據(jù)*/ printf(iuput the data of in bookn); printf(include the rkbh,spbh,name,number,price,total_pricen); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-amount,&

25、p1-price,&p1-t_price); ihead=p1; ihead-next=null; return 0; while(p-next!=null)/*把指針移到鏈表末端,在鏈表末端插入數(shù)據(jù)*/ p=p-next; p-next=p1; printf(iuput the datan); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-amount,&p1-price,&p1-t_price); p1-next=null; int in_modify() char m_num12; struct in_book * p; p=ihe

26、ad; printf(iuput the modify numn); scanf(%s,&m_num); if (p=null)/*開始沒有數(shù)據(jù)*/ printf(sorry! no data can be foundn); return 0; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.16while(p!=null) if (strcmp(p-num,m_num)=0) printf(iuput the new data without numn); scanf(%s%s%d%d%d, &p-p_num,&p-name,&p-amount,&p-price,&p-t_price); printf(

27、one data had modifiedn); return 0; p=p-next; printf(sorry! no num has foundn); int in_select() char s_num12; struct in_book * p; p=ihead; printf(iuput the select numn); scanf(%s,&s_num); while(p!=null) if (strcmp(p-num,s_num)=0) printf(the data you want is:n); printf( %s %s %s %d %d %dn, p-num,p-p_n

28、um,p-name,p-amount,p-price,p-t_price); return 0; p=p-next; printf(sorry! no num has foundn); int in_delete() char d_num12; struct in_book * p1,* p; p=ihead; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.17printf(iuput the delete numn); scanf(%s,&d_num); if (p=null)/*開始沒有數(shù)據(jù)*/ printf(no data can be foundn); return 0; if (strcmp(

29、p-num,d_num)=0 & p-next=null)/*鏈表只有一個數(shù)據(jù),且是要刪除的*/ ihead=null; printf(one data has been deletedn); return 0; if (strcmp(p-num,d_num)=0 & p-next!=null)/*要刪除的數(shù)據(jù)在鏈表的頭上*/ ihead=ihead-next; printf(one data has been deletedn); return 0; while(p-next!=null) p1=p-next; if (strcmp(p1-num,d_num)=0) p-next=p1-ne

30、xt; printf(one data has been deletedn); return 0; p=p-next; printf(sorry! no num has foundn); int out_insert() struct out_book * p1,* p; p1=(struct out_book *)malloc(sizeof(struct out_book); p=ohead; if (p=null)/*開始沒有數(shù)據(jù)*/ 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.18printf(iuput the data of out bookn); printf(include the ck

31、bh,spbh,name,number,price,total_pricen); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-amount,&p1-price,&p1-t_price); ohead=p1; ohead-next=null; return 0; while(p-next!=null)/*把指針移到鏈表末端,在鏈表末端插入數(shù)據(jù)*/ p=p-next; p-next=p1; printf(iuput the datan); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-

32、amount,&p1-price,&p1-t_price); p1-next=null; int out_modify() char m_num12; struct out_book * p; p=ohead; printf(iuput the modify numn); scanf(%s,&m_num); if (p=null)/*開始沒有數(shù)據(jù)*/ printf(sorry! no data can be foundn); return 0; while(p!=null) if (strcmp(p-num,m_num)=0) printf(iuput the new data without

33、 numn); scanf(%s%s%d%d%d, 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.19&p-p_num,&p-name,&p-amount,&p-price,&p-t_price); printf(one data had modifiedn); return 0; p=p-next; printf(sorry! no num has foundn); int out_select() char s_num12; struct out_book * p; p=ohead; printf(iuput the select numn); scanf(%s,&s_num); while(p!=

34、null) if (strcmp(s_num,p-num)=0) printf(the data you want is:n); printf( %s %s %s %d %d %dn, p-num,p-p_num,p-name,p-amount,p-price,p-t_price); return 0; p=p-next; printf(sorry! no num has foundn); int out_delete() char d_num12; struct out_book * p1,* p; p=ohead; printf(iuput the delete numn); scanf(

35、%s,&d_num); if (p=null)/*開始沒有數(shù)據(jù)*/ 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no. 20printf(no data can be foundn); return 0; if (strcmp(p-num,d_num)=0 & p-next=null)/*鏈表只有一個數(shù)據(jù),且是要刪除的*/ ohead=null; printf(one data has been deletedn); return 0; if (strcmp(p-num,d_num)=0 & p-next!=null)/*要刪除的數(shù)據(jù)在鏈表的頭上*/ ohead=ohead-next; printf(one

36、 data has been deletedn); return 0; while(p-next!=null) p1=p-next; if (strcmp(p1-num,d_num)=0) p-next=p1-next; printf(one data has been deletedn); return 0; p=p-next; printf(sorry! no num has foundn); int quit_insert() struct quit_book * p1,* p; p1=(struct quit_book *)malloc(sizeof(struct quit_book)

37、; p=qhead; if (p=null)/*開始沒有數(shù)據(jù)*/ printf(iuput the data of quit bookn); printf(include the thbh,spbh,name,number,price,total_pricen); 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.21scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-amount,&p1-price,&p1-t_price); qhead=p1; qhead-next=null; return 0; while(p-next!=null)/*把指針移到鏈表

38、末端,在鏈表末端插入數(shù)據(jù)*/ p=p-next; p-next=p1; printf(iuput the datan); scanf(%s%s%s%d%d%d, &p1-num,&p1-p_num,&p1-name,&p1-amount,&p1-price,&p1-t_price); p1-next=null; int quit_modify() char m_num12; struct quit_book * p; p=qhead; printf(iuput the modify numn); scanf(%s,&m_num); if (p=null)/*開始沒有數(shù)據(jù)*/ printf(so

39、rry! no data can be foundn); return 0; while(p!=null) if (strcmp(p-num,m_num)=0) printf(iuput the new data without numn); scanf(%s%s%d%d%d, &p-p_num,&p-name,&p-amount,&p-price,&p-t_price); printf(one data had modifiedn); 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.22return 0; p=p-next; printf(sorry! no num has foundn); int q

40、uit_select() char s_num12; struct quit_book * p; p=qhead; printf(iuput the select numn); scanf(%s,&s_num); while(p!=null) if (strcmp(s_num,p-num)=0) printf(the data you want is:n); printf( %s %s %s %d %d %dn, p-num,p-p_num,p-name,p-amount,p-price,p-t_price); return 0; p=p-next; printf(sorry! no num

41、has foundn); int quit_delete() char d_num12; struct quit_book * p1,* p; p=qhead; printf(iuput the delete numn); scanf(%s,&d_num); if (p=null)/*開始沒有數(shù)據(jù)*/ printf(no data can be foundn); return 0; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.23if (strcmp(p-num,d_num)=0 & p-next=null)/*鏈表只有一個數(shù)據(jù),且是要刪除的*/ qhead=null; printf(one data

42、 has been deletedn); return 0; if (strcmp(p-num,d_num)=0 & p-next!=null)/*要刪除的數(shù)據(jù)在鏈表的頭上*/ qhead=qhead-next; printf(one data has been deletedn); return 0; while(p-next!=null) p1=p-next; if (strcmp(p1-num,d_num)=0) p-next=p1-next; printf(one data has been deletedn); return 0; p=p-next; printf(sorry! no

43、 num has foundn); int total() int in_num=0,in_price=0; int out_num=0,out_price=0; int num=0,price=0; struct in_book *ip; struct out_book *op; struct book *p; ip=ihead; while(ip!=null) in_num+=ip-amount; in_price+=ip-t_price; ip=ip-next; 沈 陽 大 學(xué)課程設(shè)計(jì)說明書 no.24op=ohead; while(op!=null) out_num+=op-amount; out_price+=op-t_price; op=op-next; p=head; while(p!=null) num+=p-amount; price+=p-s_price; p=p-next;

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論