版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 數(shù)據(jù)結(jié)構(gòu)與算法數(shù)據(jù)結(jié)構(gòu)與算法課程設(shè)計(jì)說明書課程設(shè)計(jì)說明書題題 目:目: 進(jìn)銷存貨物管理系統(tǒng)進(jìn)銷存貨物管理系統(tǒng) 學(xué)學(xué) 院:院: 計(jì)算機(jī)科學(xué)與工程學(xué)院計(jì)算機(jī)科學(xué)與工程學(xué)院 專專 業(yè)業(yè): 姓姓 名名: 學(xué)學(xué) 號(hào)號(hào): 指導(dǎo)教師:指導(dǎo)教師: 張瑞霞張瑞霞 2014 年年 10 月月 11 日日桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙目 錄引言 .31 系統(tǒng)概述 .32 需求分析 .32.1 系統(tǒng)需求.32.2 開發(fā)環(huán)境.43 詳細(xì)設(shè)計(jì) .44 所遇到的問題和分析解決 .175 系統(tǒng)特色及關(guān)鍵技術(shù) .206 結(jié)論 .21參考文獻(xiàn) .22桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第
2、1 頁 引言 隨著計(jì)算機(jī)技術(shù)的發(fā)展,經(jīng)濟(jì)大環(huán)境的變化使得規(guī)模經(jīng)濟(jì)的優(yōu)勢不再突出。固定的硬設(shè)備、人員數(shù)量、大量資金等資源投入占企業(yè)效益的比重變少,而軟投入如管理、人力資源價(jià)值、服務(wù)、品牌附加值、渠道等要素資源的投入?yún)s能增加企業(yè)的效益。 “速度沖擊規(guī)模”的速度經(jīng)濟(jì)概念已經(jīng)向企業(yè)提出,計(jì)算機(jī)技術(shù)已經(jīng)滲透到各個(gè)領(lǐng)域,成為各個(gè)行業(yè)必不可少的工具,特別是 internet 技術(shù)的推廣和信息高速公路的建立,使 IT 產(chǎn)業(yè)在市場競爭中越發(fā)顯示獨(dú)特的優(yōu)勢,步入信息化的時(shí)代,有巨大的數(shù)據(jù)信息等待加工處理和傳輸,這使得對(duì)數(shù)據(jù)的進(jìn)一步開發(fā)和利用顯得尤為迫切。倉庫作為一總貨品資源的集散地,貨品的種類繁多,包含很多的信息
3、數(shù)據(jù)管理。據(jù)調(diào)查得知,以前倉庫進(jìn)行信息管理的方式主要是基于文本、表格等紙介質(zhì)的手工處理,對(duì)于貨品的出入庫情況的統(tǒng)計(jì)和核實(shí)等往往采用對(duì)賬本的的人工檢查,對(duì)管理者的管理權(quán)限的不受約束,任何人都可以查看,引起資料外泄。另外,數(shù)據(jù)信息處理工作量大,容易出錯(cuò),不宜查找。而且,一般儲(chǔ)存情況是記錄在賬本上的,倉庫貨物管理人員也只是當(dāng)時(shí)記得比較清楚,時(shí)間長了進(jìn)行查詢會(huì)造成費(fèi)事、費(fèi)時(shí)、費(fèi)力,如對(duì)很長時(shí)間的貨物以及大量貨物進(jìn)行管理就更加困難了。因此我們很有必要建立一個(gè)倉庫進(jìn)銷存貨物管理系統(tǒng),使貨物管理工作更加規(guī)范化、系統(tǒng)化、程序化,提高信息處理的速度和準(zhǔn)確性。1 系統(tǒng)概述 進(jìn)銷存貨物管理系統(tǒng)主要運(yùn)用了數(shù)據(jù)結(jié)構(gòu)中線
4、性表的鏈?zhǔn)酱鎯?chǔ),鏈?zhǔn)酱鎯?chǔ)空間的可擴(kuò)展性大,將鏈表中的數(shù)據(jù)以文件的形式保存,程序功能包括初始化、創(chuàng)建表、插入、刪除和查找等,以最少的內(nèi)存使用和最高的效率為原則,實(shí)現(xiàn)客戶的需求。進(jìn)入主菜單,選擇相應(yīng)的功能按照提示即可進(jìn)入相應(yīng)的操作。本系統(tǒng)的主要功能如下:(1)用戶自行注冊登錄,保證倉庫貨物信息的保密性。(2)倉庫各種貨物信息的輸入,主要包括貨物標(biāo)號(hào)、名稱、產(chǎn)地、入庫價(jià)格、入庫 時(shí)間、現(xiàn)存貨物數(shù)量、已經(jīng)銷售數(shù)量、平均銷售價(jià)格等。(3)倉庫各種貨物信息的查詢、修改和維護(hù)。(4)對(duì)倉庫中損壞貨物信息的刪除。(5)倉庫貨物信息列表的生成顯示。(6)實(shí)現(xiàn)貨物信息對(duì)文本中的保存。2 需求分析2.1 系統(tǒng)需求為
5、了能夠提高內(nèi)存的利用及各功能的實(shí)現(xiàn),程序主要使用了:(1)線性表的鏈?zhǔn)酱鎯?chǔ),分配存儲(chǔ)空間,空間可擴(kuò)展性強(qiáng),方便頻繁的錄入、插入、查桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 2 頁 找、刪除和排序等而不占用多余的內(nèi)存。 (主要應(yīng)用)(2)文件文本的讀取與寫入,為了方便用戶更加快速的執(zhí)行管理操作。(3)結(jié)構(gòu)體的定義,定義了貨物結(jié)構(gòu)體。(4)登錄用戶時(shí)的字符串讀取及驗(yàn)證。進(jìn)銷存貨物管理系統(tǒng)主要實(shí)現(xiàn)以下函數(shù)模塊功能:(1)錄入貨物信息函數(shù) LinkList CreateList(void) /運(yùn)用鏈?zhǔn)酱鎯?chǔ) 貨物信息寫入文件的函數(shù) void file_write(ListNode *p) 文件中的信息讀出
6、的函數(shù) LinkList file_read()(2)查找貨物函數(shù) vvoid FindNode()(3)修改信息函數(shù) void ModNode()(4)插入貨物函數(shù) void InsertNode()(5)刪除貨物函數(shù) void DelNode()(6)貨物信息排序函數(shù) void goodsrank() (7)統(tǒng)計(jì)貨物信息函數(shù) void goods_count()(8)密碼登陸系統(tǒng)函數(shù) void apply();int load();void key() 系統(tǒng)能夠?qū)崿F(xiàn)初始化、創(chuàng)建表、插入、刪除和查找等功能,使得貨物管理更加規(guī)范化、系統(tǒng)化、程序化,方便貨物管理員對(duì)倉庫進(jìn)行科學(xué)高效管理。2.2
7、開發(fā)環(huán)境 系統(tǒng)主要在 Microsoft Visual C+ 6.0 的環(huán)境下開發(fā)。Visual C+ 6.0,簡稱 VC 或者 VC6.0,是微軟推出的一款 C+編譯器,將“高級(jí)語言”翻譯為“機(jī)器語言(低級(jí)語言) ”的程序。Visual C+是一個(gè)功能強(qiáng)大的可視化軟件開發(fā)工具。自 1993 年 Microsoft 公司推出 Visual C+1.0 后,隨著其新版本的不斷問世,Visual C+已成為專業(yè)程序員進(jìn)行軟件開發(fā)的首選工具。雖然微軟公司推出了 Visual C+.NET(Visual C+7.0),但它的應(yīng)用的很大的局限性,只適用于 Windows 2000、Windows XP
8、和 Windows NT4.0。所以實(shí)際中,更多的是以 Visual C+6.0 為平臺(tái)。Visual C+6.0 不僅是一個(gè) C+ 編譯器,而且是一個(gè)基于 Windows 操作系統(tǒng)的可視化集成開發(fā)環(huán)境(integrated development environment,IDE) 。Visual C+6.0 由許多組件組成,包括編輯器、調(diào)試器以及程序向?qū)?AppWizard、類向?qū)?Class Wizard 等開發(fā)工具。 3 詳細(xì)設(shè)計(jì)3.1 設(shè)計(jì)框架設(shè)計(jì)框架桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 3 頁 圖 3.1:設(shè)計(jì)框架圖3.2 程序主要流程圖程序主要流程圖桂林電子科技大學(xué)綜合設(shè)計(jì)說明書
9、用紙 第 4 頁 圖 3.2:程序主要流程圖3.3 主要函數(shù)設(shè)計(jì)主要函數(shù)設(shè)計(jì)3.3.1 登陸函數(shù)登陸函數(shù)啟動(dòng)系統(tǒng),進(jìn)入界面,會(huì)有兩個(gè)選項(xiàng):1、新用戶注冊2、新用戶登陸新用戶注冊: 執(zhí)行此函數(shù),程序會(huì)在工程目錄下自動(dòng)生成一個(gè) key.txt 文件,用于保存新用戶申請(qǐng)的賬號(hào)和密碼。void apply() /新用戶注冊int i,flag=1;FILE *fp;char name20,key20;flushall();printf(n*新用戶注冊*n);printf(ttt 用戶名(不能為空):);scanf(%s,name);flushall();printf(ttt 密碼(不能為空):);fo
10、r(i=0;i=20;i+) keyi=getch();if(keyi=13)keyi=0;break;printf(*);fp=fopen(key.txt,w);if(fp=NULL)printf(the file can not open!);flag=0;exit(1);fprintf(fp,%s %s,name,key);fclose(fp);新用戶登陸: 函數(shù)通過讀取 key.txt 文件獲取新用戶之前申請(qǐng)的賬號(hào)和密碼,以驗(yàn)證輸入是否正確,從而是否允許用戶進(jìn)入系統(tǒng)。int load() /用戶登錄桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 5 頁 FILE *fp;int i;char
11、name20,key20;char name120,key120;fp=fopen(key.txt,r);fscanf(fp,%s %s,name,key); fclose(fp);printf(n*新用戶登陸*n); printf(ttt 用戶名(不能為空):); scanf(%s,name1);flushall();printf(ttt 密碼(不能為空):); for(i=0;idata.NO);/輸入貨物標(biāo)號(hào)scanf(%s,);/輸入貨物名稱scanf(%s,p-data.area);/輸入貨物產(chǎn)地scanf(%f,&p-data.price);/輸入貨物
12、入庫價(jià)格scanf(%s,p-data.time);/輸入貨物入庫時(shí)間scanf(%d,&p-data.number1);/輸入貨物入庫數(shù)量scanf(%d,&p-data.number2);/輸入貨物已經(jīng)銷售數(shù)量scanf(%f,&p-data.sellprice);/輸入貨物銷售價(jià)格rear-next=p; /新結(jié)點(diǎn)連接到尾結(jié)點(diǎn)之后rear=p; /尾指針指向新結(jié)點(diǎn)rear-next=NULL; /終端結(jié)點(diǎn)指針置空file_write(head);/ 保存輸入的貨物信息建立貨物信息界面:桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 8 頁 圖 3.5:建立貨物信息界面(1
13、)圖 3.5:建立貨物信息界面(2).4 貨物信息的插入貨物信息的插入 本系統(tǒng)設(shè)置了貨物一共有八個(gè)屬性,分別是貨物的標(biāo)號(hào)、貨物名稱、貨物產(chǎn)地、入庫價(jià)格、入庫時(shí)間、現(xiàn)存貨物數(shù)量、已經(jīng)銷售貨物數(shù)量、銷售平均單價(jià)。在進(jìn)行貨物信息的插入時(shí)應(yīng)該按照上面的順序依次插入,插入的位置也可以自由選擇。插入完成后系桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 9 頁 統(tǒng)會(huì)提醒文件需要保存的位置。 在進(jìn)行貨物信息的插入前,系統(tǒng)會(huì)提示用戶輸入插入點(diǎn)。根據(jù)以下函數(shù)可以找到相應(yīng)的插入點(diǎn)while(p2&knext;k=k+1; i 為貨物插入的點(diǎn)。p1=(ListNode*)malloc(sizeof(
14、ListNode);節(jié)點(diǎn)申請(qǐng)成功后輸入貨物的信息,p1 節(jié)點(diǎn)將保存貨物的信息。p1-next=p2-next;p2-next=p1;/將新節(jié)點(diǎn)插入貨物信息插入的界面: 圖 3.6:貨物信息插入的界面(1)桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 10 頁 圖 3.6:貨物信息插入的界面(2).5 貨物信息的查詢貨物信息的查詢查找貨物是信息管理的基本功能,當(dāng)數(shù)據(jù)很多時(shí)怎么快速找到貨物對(duì)管理員來說很重要,系統(tǒng)調(diào)用查找函數(shù)模塊,顯示查找菜單。根據(jù)提示輸入需要查找的“貨物標(biāo)號(hào)”或者“貨物名稱”進(jìn)行查找,查找成功,用戶會(huì)看到查找貨物的詳細(xì)信息,如沒有該貨物,則查找失敗,查找的主要函數(shù)設(shè)計(jì):
15、p=p0=file_read();/讀取文件p=p-next;scanf(%s,&pp);/輸入查找的方式,a 為按照貨物的標(biāo)號(hào)查找,b 為按照貨物的名稱查找,設(shè)計(jì)兩種方式查找貨物的信息,更利于管理員對(duì)貨物進(jìn)行管理getchar(); if (pp=a|pp=A) printf(請(qǐng)輸入要查找的貨物標(biāo)號(hào):);scanf(%s,&num);while (p&strcmp(p-data.NO,num)!=0)p=p-next;else /按照貨物的名稱查找if (pp=b|pp=B) 桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 11 頁 printf( 請(qǐng)輸入要查找的貨物名稱:)
16、;scanf(%s,&name);while(p&strcmp(,name)!=0)p=p-next; 以上函數(shù)是找到貨物的儲(chǔ)存位置,而找到貨物之后將貨物打印出來,用戶就可以看到所要查找的貨物的相應(yīng)信息了。 貨物查詢的界面:圖 3.7:貨物查詢的界面.6 貨物信息的刪除貨物信息的刪除 刪除是一項(xiàng)對(duì)數(shù)據(jù)管理的功能,將過期的貨物信息刪除,以免影響倉庫管理,刪除函數(shù)的原理和查找函數(shù)原理一樣,只是在輸入“貨物標(biāo)號(hào)”找到對(duì)應(yīng)的貨物后刪除該結(jié)點(diǎn),就會(huì)刪除該貨物的所有詳細(xì)信息,并提示用戶保存! p0=file_read();/調(diào)用此函數(shù)讀取所要?jiǎng)h除的文件
17、信息 while(p!=NULL) if(strcmp(p-data.NO,no)=0)/找到相應(yīng)的結(jié)點(diǎn)p1-next=p-next;free(p);/刪除鏈表中的結(jié)點(diǎn)flag=1;break; p1=p; p=p-next;flag=0;刪除成功后,新的貨物信息會(huì)打印出來,并提示用戶保存。貨物信息刪除的界面:桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 12 頁 圖 3.8:貨物信息刪除的界面.7 貨物信息的輸出貨物信息的輸出軟件的此功能能夠使用戶獲得貨物的全部信息,利于管理員對(duì)貨物的管理。p0=file_read();p0=p0-next;printf(貨物標(biāo)號(hào) 貨物名稱 貨物產(chǎn)
18、地 入庫價(jià)格 入庫時(shí)間 現(xiàn)存數(shù)量 已售數(shù)量 銷售均價(jià)n);while(p0!=NULL)printf(%7s %10s %10s %8.2f %10s %10d %10d %8.2f, p0-data.NO,,p0-data.area,p0-data.price,p0-data.time, p0-data.number1,p0-data.number2,p0-data.sellprice);p0=p0-next;貨物信息輸出界面:圖 3.9:貨物信息輸出界面桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 13 頁 .8 貨物信息的修改貨物信息的修改 軟件的此項(xiàng)功
19、能限制用戶只能修改貨物的標(biāo)號(hào),貨物名稱,貨物產(chǎn)地,入庫價(jià)格,入庫時(shí)間,不能修改貨物的已售數(shù)量和銷售平均單價(jià)兩個(gè)屬性,如需要修改此兩項(xiàng)信息,需要進(jìn)入“貨物管理的銷售更新”選項(xiàng)進(jìn)行操作。對(duì)貨物的信息修改,就是對(duì)鏈表的操作,首先需要找到所要修改的結(jié)點(diǎn),根據(jù)函數(shù):scanf(%s,snum);/系統(tǒng)提示用戶輸入所要修改貨物的標(biāo)號(hào) while(p1!=NULL)if(strcmp(p1-data.NO,snum)=0) flag=1; break; p1=p1-next;貨物信息的修改界面:圖 3.10:貨物信息修改界面.9 貨物信息的銷售更新貨物信息的銷售更新 對(duì)貨物的銷售更新,需要對(duì)
20、其銷售數(shù)量和銷售均價(jià)進(jìn)行更新。在輸入的時(shí)候,系統(tǒng)會(huì)提示用戶輸入銷售的數(shù)量和后面銷售的均價(jià),完成這兩個(gè)輸入后,系統(tǒng)會(huì)自動(dòng)更新貨物的已經(jīng)銷售數(shù)量、現(xiàn)存數(shù)量和銷售均價(jià)。p1-data.sellprice=(p1-data.number2*p1-data.sellprice+num1*price1)/(p1- data.number2+num1);/更新貨物的銷售均價(jià)p1-data.number1=p1-data.number1-num1;/更新貨物的現(xiàn)存數(shù)量 p1-data.number2=p1-data.number2+num1;/更新貨物的已經(jīng)銷售數(shù)量貨物信息的更新界面:桂林電子科技大學(xué)綜合設(shè)計(jì)
21、說明書用紙 第 14 頁 圖 3.11:貨物信息更新界面.10 貨物信息的排序貨物信息的排序貨物信息排序,為了可以更清楚的了解到貨物庫存量的多少,方便于管理者對(duì)倉庫貨物的銷售政策和對(duì)即將過期貨物的多少有所了解,使倉庫管理員更直觀的了解到倉庫庫存。該函數(shù)找到貨物的記錄信息按照貨物數(shù)量從小到大重新排序,排序完后,返回主菜單并提示用戶保存! 在對(duì)貨物排序時(shí),用戶可以根據(jù)貨物的現(xiàn)存數(shù)量、貨物的入庫價(jià)格、貨物的已經(jīng)銷售價(jià)格、貨物的銷售均價(jià)進(jìn)行排序。在對(duì)貨物的現(xiàn)存數(shù)量進(jìn)行排序時(shí),應(yīng)用了冒泡排序的方法,大體算法如下: while(p-next)/冒泡排序k=p;q=p-next;while
22、(q)if(k-data.number1)(q-data.number1)k=q;q=q-next; if(p!=k) t=*p; *p=*k; *k=t;t.next=p-next;p-next=k-next;k-next=t.next;flag=1; p=p-next; 對(duì)貨物的入庫價(jià)格進(jìn)行排序時(shí),應(yīng)用了直接插入的排序方法,充分利用數(shù)據(jù)結(jié)構(gòu)與算法的內(nèi)容進(jìn)行設(shè)計(jì)系統(tǒng)。ListNode *ptr1,*ptr2;桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 15 頁 q=L; ptr2=ptr1=p-next; /待排序鏈表 p-next=NULL; while(ptr1) while(p) if(p
23、-data.priceptr1-data.price)ptr2=ptr1-next; /記錄無序鏈表下一個(gè)節(jié)點(diǎn)q-next=ptr1; ptr1-next=p;ptr1=ptr2;/ptr1 指向下一個(gè)節(jié)點(diǎn)break;else q=p;p=p-next; if(p=NULL) ptr2=ptr1-next; /從無序鏈表取出節(jié)點(diǎn)元素q-next=ptr1;ptr1-next=NULL; ptr1=ptr2;/無序鏈表節(jié)點(diǎn)后移 q=L;p=L-next; /有序鏈表貨物信息的排序界面:桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 16 頁 圖 3.12:貨物信息排序界面.11 貨物信
24、息的統(tǒng)計(jì)貨物信息的統(tǒng)計(jì)對(duì)貨物的信息統(tǒng)計(jì)時(shí),系統(tǒng)會(huì)自動(dòng)計(jì)算出倉庫里的剩余貨物件數(shù),已經(jīng)銷售的件數(shù),利潤總數(shù)。當(dāng)貨物的總數(shù)量少于 200 件時(shí),會(huì)提示:倉庫里的貨物偏少,請(qǐng)適當(dāng)進(jìn)貨!當(dāng)貨物的總數(shù)量大于 1100 件時(shí),會(huì)提示:倉庫里積壓的貨物太多,請(qǐng)及時(shí)清倉!當(dāng)貨物的數(shù)量在 200 到 1100 件之間時(shí),系統(tǒng)會(huì)提示:倉庫里總件數(shù)大于 200 件,小于 1100 件,無需進(jìn)貨,清倉! 通過對(duì)鏈表的操作,可以實(shí)現(xiàn)上面的功能。貨物信息的統(tǒng)計(jì)界面:桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 17 頁 圖 3.13:貨物信息統(tǒng)計(jì)界面4 所遇到的問題和分析解決 在進(jìn)行系統(tǒng)設(shè)計(jì)開始時(shí),我花了一段時(shí)間思索設(shè)計(jì)了系統(tǒng)
25、的主體框架。本次課程設(shè)計(jì),重要的是將已學(xué)的算法應(yīng)用到自己的設(shè)計(jì)當(dāng)中,因此在構(gòu)建完系統(tǒng)主體框架之后,我又花了很長的時(shí)間去思考系統(tǒng)的算法。整個(gè)系統(tǒng)應(yīng)用了鏈表的內(nèi)容,通過對(duì)鏈表的操作,可以對(duì)數(shù)據(jù)進(jìn)行輸入,修改,查詢,和更新等。 軟件的設(shè)計(jì)應(yīng)用了流文件,在操作流文件時(shí),程序出現(xiàn)了各式各樣的問題,剛開始在建立文件的時(shí)候,文件不能寫入,經(jīng)過后面的調(diào)試,發(fā)現(xiàn)是文件的寫入格式不對(duì),將貨物的入庫價(jià)格和銷售平均價(jià)格由 double 型改為 float 型,原來的問題就不會(huì)再出現(xiàn)了。 軟件的貨物信息錄入、插入、更新、統(tǒng)計(jì)等功能都是在鏈表的基礎(chǔ)上操作,在寫系統(tǒng)之前就應(yīng)該對(duì)這方面做足了功課,否則將無從下手。貨物的信息錄
26、入,也就是鏈表的創(chuàng)建,在設(shè)計(jì)軟件之初時(shí),我利用尾插法進(jìn)行創(chuàng)建。正確的算法大概為:LinkList head=(ListNode *)malloc(sizeof(ListNode);rear=head;p=(ListNode *)malloc(sizeof(ListNode);rear-next=p; rear=p; 剛開始時(shí)在寫創(chuàng)建鏈表的代碼時(shí)可能因?yàn)榇中?,忘記為?jié)點(diǎn)申請(qǐng)新空間,導(dǎo)致后面的貨物信息寫入總是出現(xiàn)錯(cuò)誤。 軟件在對(duì)貨物的信息進(jìn)行更新時(shí),用戶只需要輸入后面貨物的銷售數(shù)量和銷售平均價(jià)格,而軟件需要自動(dòng)更新文件的現(xiàn)存數(shù)量、已經(jīng)銷售數(shù)量和銷售平均價(jià)格。雖然這個(gè)算法不是太難,但如果不夠細(xì)心去寫
27、的話,也可能會(huì)導(dǎo)致系統(tǒng)的更新失敗。比如剛開始的時(shí)候我就把它們之間的代碼順序搞亂,結(jié)果出現(xiàn)了更新錯(cuò)誤。桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 18 頁 p1-data.sellprice=(p1-data.number2*p1-data.sellprice+num1*price1)/(p1-data.number2+num1);p1-data.number1=p1-data.number1-num1;p1-data.number2=p1-data.number2+num1; 上面的三行代碼是正確的排列順序,如果將第一行代碼跟第二行代碼或者第三行代碼交換,就會(huì)出現(xiàn)更新錯(cuò)誤! 在寫貨物的信息插入的代
28、碼時(shí)候也遇到過問題,軟件剛開始的時(shí)候會(huì)提示用戶輸入插入的位置,但在調(diào)試軟件的時(shí)候老是出現(xiàn)插入位置不對(duì)的情況,經(jīng)過檢查發(fā)現(xiàn)是查找 i的位置不對(duì)!正確的算法為:while(p2&knext;k=k+1; 而開始寫代碼的時(shí)候居然寫成了 knext) /冒泡排序算法 k=p;q=p-next; while(q) if(k-data.number1)(q-data.number1) k=q;q=q-next; if(p!=k) t=*p;*p=*k; *k=t;t.next=p-next; p-next=k-next; k-next=t.next;flag=1;桂林電子科技大學(xué)綜合設(shè)計(jì)說明書用紙 第 19 頁 p=p-next;直接插入的主要算法為:ListNode *ptr1,*ptr2;q=L; ptr2=ptr1=p-next; /待排序鏈表 p-next=NULL; while(ptr1) while(p) if(p-data.priceptr1-data.price)ptr2=ptr1-next; /記錄無序鏈表下一個(gè)節(jié)點(diǎn)q-next=ptr1; ptr1-next=p;ptr1=ptr2;/ptr1 指向下一個(gè)節(jié)點(diǎn)break;elseq=p;p=p-next; if(p=NULL) ptr2=ptr1-next
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 轉(zhuǎn)崗員工安全培訓(xùn)
- 小兒外科常見疾病及護(hù)理
- 財(cái)務(wù)培訓(xùn)畢業(yè)論文
- 培訓(xùn)機(jī)構(gòu)處理家長投訴
- 14.3 能量的轉(zhuǎn)化和守恒 (4大題型)(含答案解析)
- 遼寧省錦州市2024-2025學(xué)年八年級(jí)上學(xué)期數(shù)學(xué)10月月考試題(含答案)
- 初中七年級(jí)英語上學(xué)期期中考前測試卷(人教版)含答案解析
- 2024年江蘇省淮安市中考語文試題卷(含答案解析)
- T-YNRZ 022-2024 橡膠林下珠芽黃魔芋生態(tài)種植技術(shù)規(guī)程
- 巖土工程單選題100道及答案解析
- 北京市水資源稅講解
- 鋼筋組織供應(yīng)、運(yùn)輸、售后服務(wù)方案
- 異質(zhì)性企業(yè)貿(mào)易理論的發(fā)展課件
- PLC順序啟??刂凭幊?A11)
- 顱腦損傷的急救課件
- 紅色溫馨生日快樂祝福相冊PPT模板課件
- 融媒體中心節(jié)目信息三審三校制度
- 服飾禮儀(48頁)ppt課件
- (精華)國家開放大學(xué)電大??啤毒W(wǎng)絡(luò)系統(tǒng)管理與維護(hù)》形考任務(wù)3答案
- 天網(wǎng)施工標(biāo)準(zhǔn)化
- 光纜通信線路工程的設(shè)計(jì)畢業(yè)論文
評(píng)論
0/150
提交評(píng)論