版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 課 程 設(shè) 計(jì) 報(bào) 告</p><p> 課程名稱(chēng) 《C語(yǔ)言程序設(shè)計(jì)》 </p><p> 課題名稱(chēng) 超市收銀系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p> 專(zhuān) 業(yè) 統(tǒng)計(jì)學(xué) </p><p> 班
2、級(jí) </p><p> 學(xué) 號(hào) </p><p> 姓 名 </p><p> 指導(dǎo)教師 <
3、/p><p> 2013年 5月20日</p><p> 課 程 設(shè) 計(jì) 任 務(wù) 書(shū)</p><p> 課程名稱(chēng) 《C語(yǔ)言程序設(shè)計(jì)》 </p><p> 課 題超市收銀系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 專(zhuān)業(yè)班級(jí) 統(tǒng)計(jì)1201班 </p>
4、<p> 學(xué)生姓名 </p><p> 學(xué) 號(hào) </p><p> 指導(dǎo)老師 </p><p> 審 批
5、 </p><p> 任務(wù)書(shū)下達(dá)日期 2013 年 5月 20日</p><p> 任務(wù)完成日期 2013年 6月 23 日</p><p><b> 目 錄</b></p><p> 1.系統(tǒng)需求分析1</p><p><b> 1.1系統(tǒng)要求</b>&
6、lt;/p><p><b> 1.2功能要求</b></p><p><b> 2.總體設(shè)計(jì)1</b></p><p><b> 2.1模塊劃分</b></p><p> 2.2系統(tǒng)功能模塊圖</p><p><b> 2.3模塊功能說(shuō)
7、明</b></p><p> 2.4商品函數(shù)數(shù)據(jù)類(lèi)型</p><p><b> 3.詳細(xì)設(shè)計(jì)3</b></p><p> 3.1商品進(jìn)貨流程圖</p><p> 3.2商品修改流程圖</p><p> 4.程序調(diào)試分析4</p><p><b
8、> 5.總結(jié)9</b></p><p> 6.系統(tǒng)使用說(shuō)明9</p><p><b> 附件:源程序清單</b></p><p><b> 系統(tǒng)需求分析</b></p><p><b> 1.1系統(tǒng)要求:</b></p><p
9、> 實(shí)現(xiàn)對(duì)超市商品的收銀以及各項(xiàng)數(shù)據(jù)的顯示、查詢(xún)、修改、排序等操作的管理。</p><p><b> 1.2功能要求:</b></p><p> 1)本系統(tǒng)采用一個(gè)結(jié)構(gòu)體數(shù)組,數(shù)據(jù)的結(jié)構(gòu)應(yīng)當(dāng)包括:商品編號(hào)、商品名稱(chēng)、單價(jià)、庫(kù)存量、購(gòu)買(mǎi)量、總價(jià)、成本、利潤(rùn)。</p><p> 2)本系統(tǒng)顯示這樣的菜單:</p><
10、;p><b> 請(qǐng)選擇系統(tǒng)功能項(xiàng):</b></p><p><b> 收銀</b></p><p><b> 數(shù)據(jù)查詢(xún)</b></p><p><b> 數(shù)據(jù)管理</b></p><p><b> ?、?入庫(kù)</b>&l
11、t;/p><p><b> ?、?刪除</b></p><p><b> ⑶ 修改</b></p><p><b> 利潤(rùn)統(tǒng)計(jì)</b></p><p> ?、?按類(lèi)統(tǒng)計(jì)利潤(rùn)并排序</p><p><b> ⑵ 統(tǒng)計(jì)總利潤(rùn)</b>&
12、lt;/p><p><b> 退出系統(tǒng)</b></p><p> 3)執(zhí)行一個(gè)具體的功能之后,程序?qū)⒅匦嘛@示菜單。</p><p> 4)將數(shù)據(jù)保存到文件中。</p><p> 5)進(jìn)入系統(tǒng)前要求先輸入密碼</p><p><b> 總體設(shè)計(jì)</b></p>
13、<p><b> 2.1模塊劃分</b></p><p> 首先輸入管理員的賬號(hào)、密碼,成功登入系統(tǒng),然后系統(tǒng)模塊分為“商品管理”、“商品銷(xiāo)售”、“查看利潤(rùn)”三個(gè)部分。商品管理又包含:商品進(jìn)貨,商品添加,商品瀏覽,商品搜索,商品刪除,商品修改或返回上一級(jí)。</p><p> 2.2系統(tǒng)功能模塊圖</p><p><b&
14、gt; 2.3模塊功能說(shuō)明</b></p><p> ?。?).登入模塊:輸入賬號(hào),密碼登入。</p><p> (2).商品管理模塊:對(duì)商品條形碼,名稱(chēng),單價(jià),庫(kù)存量,購(gòu)買(mǎi)量,成本價(jià),利潤(rùn)等信息錄入的管理。還可對(duì)已建立的商品信息進(jìn)行查詢(xún),并且可根據(jù)需要選擇按商品名查詢(xún)或按商品種類(lèi)查詢(xún)或按商品進(jìn)貨量查詢(xún)。</p><p> (3).商品銷(xiāo)售模塊:輸
15、入要銷(xiāo)售商品條形碼,名稱(chēng)以及數(shù)量,最后進(jìn)行付款,找零,或者打印小票。</p><p><b> ?。?).進(jìn)貨模塊:</b></p><p> 錄入需要管理的商品信息并將信息保存于文件中,以方便日后進(jìn)行打印、讀取、更新等操作。</p><p><b> ?。?).刪除模塊:</b></p><p>
16、; 可對(duì)過(guò)期的商品做刪除處理。</p><p><b> ?。?).修改模塊:</b></p><p> 可根據(jù)需要對(duì)多件商品信息進(jìn)行修改,也可隨時(shí)對(duì)個(gè)別項(xiàng)進(jìn)行修改。</p><p><b> ?。?).瀏覽模塊:</b></p><p> 將所有商品信息或想要查詢(xún)的商品信息顯示于屏幕,用于打
17、印商品信息或查找某些商品信息。</p><p><b> (8).利潤(rùn)模塊:</b></p><p> 統(tǒng)計(jì)商品的利潤(rùn)進(jìn)行統(tǒng)計(jì)。</p><p> ?。?).返回上一級(jí):</p><p> 選擇該項(xiàng),自動(dòng)返回上一級(jí)的選擇。</p><p> 2.4商品函數(shù)數(shù)據(jù)類(lèi)型</p>&
18、lt;p><b> 3.詳細(xì)設(shè)計(jì)</b></p><p> 3.1 商品進(jìn)貨流程圖</p><p><b> y</b></p><p><b> n</b></p><p><b> n</b></p><p>
19、 3.2商品修改流程圖</p><p><b> y</b></p><p><b> n</b></p><p> n </p><p><b> 4. 程序調(diào)試分析</b></p><p> 1.首先輸入賬號(hào)、密碼,
20、登入收銀系統(tǒng)</p><p> 2.選擇商品菜單功能</p><p> 3..輸入進(jìn)貨的商品條碼、名稱(chēng)、單價(jià)、數(shù)量、售價(jià)</p><p> 4.修改商品名稱(chēng)、單價(jià)、售價(jià)、庫(kù)存</p><p> 5.瀏覽所有商品信息</p><p><b> 6.查找商品</b></p>&
21、lt;p><b> 7.添加商品</b></p><p><b> 8.刪除部分商品</b></p><p><b> 9.購(gòu)買(mǎi)商品</b></p><p><b> 5. 總結(jié)</b></p><p> 此次實(shí)踐課編寫(xiě)的是一個(gè)應(yīng)用程序,相
22、對(duì)于以前我們見(jiàn)到的程序,它要大得多,于是就按課本上的例子編了超市管理系統(tǒng),先把界面弄好然后再添加各模塊。忙碌了一個(gè)多星期,在大家的共同努力下,我們總算將此程序設(shè)計(jì)出來(lái)。盡管不是自己獨(dú)立完成,但仍然很高興,因?yàn)樵谠O(shè)計(jì)的過(guò)程中,讓我了解到要設(shè)計(jì)一個(gè)大型程序,查找資料是至關(guān)重要的,在他人的基礎(chǔ)上,再根據(jù)自己所學(xué)進(jìn)行修改與調(diào)試,現(xiàn)在在操作本程序時(shí)可根據(jù)提示進(jìn)行相關(guān)操作,能正確輸出結(jié)果。這過(guò)程艱辛,但只要你持之以恒,成功指日可待。</p&g
23、t;<p> 在這次設(shè)計(jì)過(guò)程中,不僅復(fù)習(xí)課本上所學(xué)知識(shí),還通過(guò)查資料、問(wèn)同學(xué), 學(xué)到了課本上沒(méi)有的知識(shí)。從而啟發(fā)我,要想寫(xiě)好程序,在寫(xiě)好課本知識(shí)的同時(shí)還需要多讀和專(zhuān)業(yè)有關(guān)的一些書(shū)籍,同時(shí)還需要多動(dòng)腦子,盡量把所學(xué)的知識(shí)綜合起應(yīng)用,除此之外,寫(xiě)程序時(shí)必須要細(xì)心,不能輸錯(cuò)一個(gè)字符標(biāo)點(diǎn),就連全角半角也得注意。在修改時(shí)要有耐心,編譯出錯(cuò)后必須逐個(gè)錯(cuò)誤去改正,絕不能心急浮躁,否則修改之后還會(huì)有新的錯(cuò)誤。當(dāng)然由于自己學(xué)的不夠好,知識(shí)
24、不夠豐富,在選題報(bào)告中還有一些不夠完美的地方。希望自己繼續(xù)努力,下次能做的更好。</p><p> 同時(shí)我想向所有為我的實(shí)習(xí)提供幫助和指導(dǎo)的老師和同學(xué)致謝,感謝你們?yōu)槲业捻樌麑?shí)習(xí)所作的努力和幫助。</p><p> 通過(guò)實(shí)踐的學(xué)習(xí),我認(rèn)識(shí)到學(xué)好計(jì)算機(jī)要重視實(shí)踐操作,不僅僅是學(xué)洗C語(yǔ)言,還是其它的語(yǔ)言,以及其它的計(jì)算機(jī)方面的知識(shí)都要重在實(shí)踐,所以后在學(xué)習(xí)過(guò)程中,我會(huì)更加注視實(shí)踐操作,使自
25、己便好地學(xué)好計(jì)算機(jī)。</p><p><b> 6. 系統(tǒng)使用說(shuō)明</b></p><p> ?。?)初次使用先添加管路員的賬號(hào)、密碼,密碼需要再次輸入 。 </p><p> ?。?)輸入正確的賬號(hào)、密碼即可登入成功,進(jìn)入商品管理。</p><p> (3)添加商品時(shí),只可添加已有條碼商品的數(shù)量,若添加新的商品則
26、進(jìn)入進(jìn)貨模塊。</p><p> ?。?)修改商品時(shí),可修改商品全部信息,也可以只是修改商品部分的信息。</p><p> ?。?)退出再次進(jìn)入系統(tǒng)時(shí),原來(lái)進(jìn)貨的商品信息依然存在,方便操作。</p><p> ?。?)退出系統(tǒng),再次登入,直接輸入賬號(hào)、密碼即可,無(wú)需再添加賬戶(hù)。</p><p> 計(jì)算機(jī)與通信學(xué)院課程設(shè)計(jì)評(píng)分表</p&
27、gt;<p> 課程名稱(chēng): C語(yǔ)言程序設(shè)計(jì) </p><p> 教師簽名: </p><p> 日 期: </p><p><b> 附件:源程序清單</b></p><p> #include <stdio.h></p>
28、;<p> #include<string></p><p> #include<windows.h></p><p> void jieshao()//軟件介紹</p><p><b> {</b></p><p> printf("\t************
29、**************************************\n");</p><p> printf("\t***** 歡 迎 來(lái) 到 超 市 收 銀 系 統(tǒng) ******\n");</p><p> printf("\t**********************************************
30、***\n");</p><p><b> }</b></p><p> float zongjine=0;//消費(fèi)總金額</p><p> float chengben=0;//保存使用的成本</p><p> float yingli=0;//保存盈利金額</p><p>
31、 int guanshuliang=0;//記錄管理員數(shù)量</p><p> int xiaoshuliang=0;//記錄銷(xiāo)售員數(shù)量</p><p> int chenggong=0;//0則是管理員,非0則是銷(xiāo)售員。證明登陸是否成功</p><p> int zhonglei=0;//記錄貨物種類(lèi)</p><p> int zhe
32、njia=0;//記錄是否是會(huì)員 0則不是會(huì)員1則是會(huì)員</p><p> int diji=0;//記錄是會(huì)員編號(hào)</p><p> int zongjifen=0;//記錄一共接受了多少積分</p><p> struct huiyuan//定義會(huì)員信息結(jié)構(gòu)</p><p><b> {</b></
33、p><p> float jifen;//記錄會(huì)員積分</p><p> char name[50];//帳戶(hù)</p><p> char mima[50];//密碼</p><p> };huiyuan hui[1000000];//會(huì)員信息</p><p> struct shangpin//定義商品結(jié)構(gòu)體&
34、lt;/p><p><b> {</b></p><p> char name[50];//商品名</p><p> char tiaoxinma[50];//條形碼</p><p> float xiaoshoudanjia;//銷(xiāo)售單價(jià)</p><p> float jinhuodanj
35、ia;//進(jìn)貨單價(jià)</p><p> int kucun;//庫(kù)存</p><p><b> };</b></p><p> shangpin shp[10000000];//用于保存商品的信息</p><p> struct xiaoshouyuan//定義銷(xiāo)售員結(jié)構(gòu)體</p><p>
36、<b> {</b></p><p> int cunzai;//用于記錄該銷(xiāo)售員是否存在,=-1則表示被刪除</p><p> char zhanghu[20];//銷(xiāo)售員帳戶(hù)</p><p> char mima[20];//銷(xiāo)售員密碼</p><p> };xiaoshouyuan xiao[50];
37、</p><p> struct guanliyuan//定義管理員結(jié)構(gòu)體</p><p><b> {</b></p><p> int cunzai;//用于記錄該管理員員是否存在,=-1則表示被刪除</p><p> char zhanghu[20];//管理員帳戶(hù)</p><p>
38、 char mima[20];//管理員密碼</p><p> };guanliyuan guan[100];</p><p> FILE *fp;//定義一個(gè)FILE類(lèi)型的*fp指針</p><p> //保存商品結(jié)構(gòu)體數(shù)組</p><p> void Saveshangpin()//wb為二進(jìn)制寫(xiě),如果文件不存在則自動(dòng)創(chuàng)建文件
39、shangpin.dat</p><p><b> {</b></p><p> fp=fopen("shangpin.dat","wb");</p><p> if(fp)//如果文件被成功打開(kāi)的話(huà)(有可能文件不存在)</p><p><b> {</b
40、></p><p> for(int i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(fwrite(&shp[i],sizeof(struct shangpin),1,fp)!=1)</p><p> printf("文件寫(xiě)入錯(cuò)誤
41、!\n");</p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p><b> }</b></p><p> //讀取商品結(jié)構(gòu)體數(shù)組到文件</p>
42、;<p> void Loadshangpin()</p><p><b> {</b></p><p> fp=fopen("shangpin.dat","rb");</p><p> if(fp)//如果文件被成功打開(kāi)的話(huà)(有可能文件不存在)</p><p&
43、gt;<b> {</b></p><p> for(int i=0;fread(&shp[i],sizeof(struct shangpin),1,fp);i++)</p><p><b> {</b></p><p> zhonglei++;</p><p><b>
44、 }</b></p><p> fclose(fp);</p><p><b> }</b></p><p><b> }</b></p><p> //保存管理員結(jié)構(gòu)體數(shù)組</p><p> void Saveguanliyuan()//wb為二進(jìn)制寫(xiě)
45、,如果文件不存在則自動(dòng)創(chuàng)建文件</p><p><b> {</b></p><p> fp=fopen("guanliyuan.dat","wb");</p><p> if(fp)//如果文件被成功打開(kāi)的話(huà)(有可能文件不存在)</p><p><b> {&
46、lt;/b></p><p> for(int i=0;i<guanshuliang;i++)</p><p><b> {</b></p><p> if(fwrite(&guan[i],sizeof(struct guanliyuan),1,fp)!=1)</p><p> printf(
47、"文件寫(xiě)入錯(cuò)誤!\n");</p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p><b> }</b></p><p> void Loadgu
48、anliyuan()//讀取管理員結(jié)構(gòu)體數(shù)組到文件</p><p><b> {</b></p><p> fp=fopen("guanliyuan.dat","rb");</p><p> if(fp)//如果文件被成功打開(kāi)的話(huà)(有可能文件不存在)</p><p><
49、;b> {</b></p><p> guanshuliang=0;</p><p> for(int i=0;fread(&guan[i],sizeof(struct guanliyuan),1,fp);i++)</p><p><b> {</b></p><p> guanshu
50、liang++;</p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p><b> }</b></p><p> //保存銷(xiāo)售員結(jié)構(gòu)體數(shù)組</p>&l
51、t;p> void Savexiaoshouyuan()//wb為二進(jìn)制寫(xiě),如果文件不存在則自動(dòng)創(chuàng)建文件shangpin.dat</p><p><b> {</b></p><p> fp=fopen("xiaoshouyuan.dat","wb");</p><p> if(fp)//
52、如果文件被成功打開(kāi)的話(huà)(有可能文件不存在)</p><p><b> {</b></p><p> for(int i=0;i<xiaoshuliang;i++)</p><p><b> {</b></p><p> if(fwrite(&xiao[i],sizeof(str
53、uct xiaoshouyuan),1,fp)!=1)</p><p> printf("文件寫(xiě)入錯(cuò)誤!\n");</p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p>
54、;<b> }</b></p><p> void Loadxiaoshouyuan()//讀取銷(xiāo)售員結(jié)構(gòu)體數(shù)組到文件</p><p><b> {</b></p><p> fp=fopen("xiaoshouyuan.dat","rb");</p><
55、p> if(fp)//如果文件被成功打開(kāi)的話(huà)(有可能文件不存在)</p><p><b> {</b></p><p> xiaoshuliang=0;</p><p> for(int i=0;fread(&xiao[i],sizeof(struct xiaoshouyuan),1,fp);i++)</p>
56、<p><b> {</b></p><p> xiaoshuliang++;</p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p><b>
57、; }</b></p><p> void guanlicaidan()//管理員權(quán)限菜單</p><p><b> {</b></p><p> printf("\n\n\t********* 管理員權(quán)限菜單: **************\n");</p><p>
58、 printf("\t**************************************************\n");</p><p> printf("\t********** 1. 商品管理 **********\n");</p><p> printf("\t
59、 \n");</p><p> printf("\t********** 2. 查看利潤(rùn) **********\n");</p><p> printf("\t
60、 \n");</p><p> printf("\t********** 0. 返回身份選擇! **********\n");</p><p> printf("\t**************************************************\n");</p>
61、<p><b> }</b></p><p> void xiaocaidan()//銷(xiāo)售員權(quán)限菜單</p><p><b> {</b></p><p> printf("\n\n\t******** 銷(xiāo)售員權(quán)限菜單: ***********\n");</p
62、><p> printf("\t \n");</p><p> printf("\t******* 1. 瀏覽商品信息 *******\n");</p><p> printf("
63、\t \n");</p><p> printf("\t******* 2. 銷(xiāo) 售 *******\n");</p><p> printf("\t
64、 \n");</p><p> printf("\t******* 0. 返回身份選擇! *******\n");</p><p> printf("\t**************************************************\n&quo
65、t;);</p><p><b> }</b></p><p> void jinhuo()//進(jìn)貨</p><p><b> {</b></p><p> Loadshangpin();</p><p> char choose;</p><p
66、> int i=zhonglei;</p><p> int shi=1;//記錄條形碼是否被使用-數(shù)則表示被使用了</p><p><b> do</b></p><p><b> {</b></p><p> shi=1;//在判斷條碼前為非負(fù)數(shù)</p><
67、p> printf("購(gòu)買(mǎi)商的條碼:");</p><p> fflush(stdin);</p><p> scanf("%s",shp[i].tiaoxinma);</p><p> if(zhonglei>0)</p><p><b> {</b><
68、;/p><p> for(int a=0;a<zhonglei;a++)</p><p><b> {</b></p><p> if(a!=i&&shp[a].kucun>=0)</p><p><b> {</b></p><p> if
69、(strcmp(shp[i].tiaoxinma,shp[a].tiaoxinma)==0)</p><p><b> {</b></p><p> printf("錯(cuò)誤?。〈藯l碼已經(jīng)被使用!\n");</p><p> shi=-1;//條碼被使用。標(biāo)記為-數(shù);</p><p><b&g
70、t; break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(sh
71、i!=-1)</p><p><b> {</b></p><p> printf("商品的名稱(chēng):");</p><p> fflush(stdin);</p><p> scanf("%s",shp[i].name);</p><p> prin
72、tf("進(jìn)貨單價(jià):");</p><p> fflush(stdin);</p><p> scanf("%f",&shp[i].jinhuodanjia);</p><p> printf("進(jìn)貨數(shù)量:");</p><p> fflush(stdin);</
73、p><p> scanf("%d",&shp[i].kucun);</p><p> printf("銷(xiāo)售價(jià)格:");</p><p> fflush(stdin);</p><p> scanf("%f",&shp[i].xiaoshoudanjia);<
74、/p><p><b> i++;</b></p><p> zhonglei++;</p><p> printf("是否繼續(xù)進(jìn)貨:(y/n)");</p><p> fflush(stdin);</p><p> scanf("%c",&ch
75、oose);</p><p><b> }</b></p><p> }while(choose=='y'||choose=='Y');</p><p> Saveshangpin();</p><p><b> }</b></p><p&
76、gt; void xiaoshou()//銷(xiāo)售物品</p><p><b> {</b></p><p><b> int i=0;</b></p><p> int shiyongjifen=0;//保存每次的使用積分</p><p> int dayin[1000];//標(biāo)記打印,若值
77、為1則為打印商品</p><p> char tiaoma[50];</p><p> char choose;</p><p> int shuliang=0;//保存購(gòu)買(mǎi)數(shù)量</p><p> int geshu[1000];//記錄多次購(gòu)物的個(gè)數(shù)</p><p> float shifu=0;//保存實(shí)
78、付金額</p><p> float zhaoling=0;//找零</p><p> int chaochu;//標(biāo)記購(gòu)買(mǎi)量是否超出庫(kù)存</p><p> if(zhenjia==1)</p><p><b> {</b></p><p><b> do</b>&
79、lt;/p><p><b> {</b></p><p> chaochu=0;</p><p> printf("\n請(qǐng)輸入條形碼:");</p><p> fflush(stdin);</p><p> scanf("%s",tiaoma);<
80、;/p><p> printf("數(shù)量:");</p><p> fflush(stdin);</p><p> scanf("%d",&shuliang);</p><p> for(i=0;i<zhonglei;i++)</p><p><b>
81、 {</b></p><p> if(shp[i].kucun>=0)</p><p><b> {</b></p><p> if(strcmp(tiaoma,shp[i].tiaoxinma)==0)</p><p><b> {</b></p><
82、p> printf("\n購(gòu)買(mǎi)商品信息如下:\n");</p><p> printf("\t商品名:%s\t進(jìn)貨單價(jià):%.2f\t銷(xiāo)售單價(jià):%.2f\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia);</p><p> if(shuliang>shp[i].kucu
83、n) </p><p><b> {</b></p><p> chaochu=-1;//標(biāo)記為-數(shù)表示超出</p><p> printf("沒(méi)有足夠庫(kù)存!\n\n");</p><p><b> break;</b></p><p><b
84、> }</b></p><p> dayin[i]=1;</p><p> geshu[i]=shuliang;</p><p> shp[i].kucun=shp[i].kucun-shuliang;</p><p> zongjine+=shp[i].xiaoshoudanjia*shuliang;//計(jì)算應(yīng)付
85、金額</p><p> chengben+=shp[i].jinhuodanjia*shuliang;//計(jì)算成本</p><p> hui[diji].jifen+=shp[i].xiaoshoudanjia*shuliang;</p><p><b> break;</b></p><p><b>
86、 }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(i==zhonglei) printf("沒(méi)有此商品!\n");</p><p> if(chaochu!=-1)</p><
87、p><b> {</b></p><p> printf("是否繼續(xù)購(gòu)買(mǎi)(y/n):");</p><p> fflush(stdin);</p><p> scanf("%c",&choose);</p><p><b> }</b>
88、</p><p> }while(choose=='y'||choose=='Y'||chaochu==-1);</p><p> printf("應(yīng)付金額%.2f\n",zongjine);</p><p> printf("實(shí)付金額:");</p><p>
89、fflush(stdin);</p><p> scanf("%f",&shifu);</p><p> printf("100積分=1元,是否使用積分?(y/n)");</p><p> fflush(stdin);</p><p> scanf("%c",&
90、;choose);</p><p> if(choose=='y'||choose=='Y')</p><p><b> {</b></p><p> printf("剩余積分%.2f\n",hui[diji].jifen);</p><p> printf(&
91、quot;使用多少積分?");</p><p> fflush(stdin);</p><p> scanf("%d",&shiyongjifen);</p><p> zongjifen+=shiyongjifen;</p><p> zhaoling=shifu-zongjine+shiyon
92、gjifen/100.0;</p><p> hui[diji].jifen-=shiyongjifen;</p><p><b> }</b></p><p> else zhaoling=shifu-zongjine;</p><p><b> }</b></p><
93、p> if(zhenjia!=1)</p><p><b> {</b></p><p><b> do</b></p><p><b> {</b></p><p> printf("請(qǐng)輸入條形碼:");</p><p&
94、gt; fflush(stdin);</p><p> scanf("%s",tiaoma);</p><p> printf("數(shù)量:");</p><p> fflush(stdin);</p><p> scanf("%d",&shuliang);</p
95、><p> for(i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(shp[i].kucun>=0)</p><p><b> {</b></p><p> if(strcmp(tiaoma,shp[i]
96、.tiaoxinma)==0)//找到被銷(xiāo)售的商品</p><p><b> {</b></p><p> printf("\n購(gòu)買(mǎi)商品信息如下:\n");</p><p> printf("\t商品名:%s\t進(jìn)貨單價(jià):%.2f\t銷(xiāo)售單價(jià):%.2f\n",shp[i].name,shp[i].j
97、inhuodanjia,shp[i].xiaoshoudanjia);</p><p> if(shp[i].kucun<=10) printf(" 提示:該商品庫(kù)存不足10份!請(qǐng)及時(shí)補(bǔ)充!\n");//提示庫(kù)存信息</p><p> if(shuliang>shp[i].kucun)//判斷是否有足夠庫(kù)存</p><p><
98、;b> {</b></p><p> chaochu=-1;//-數(shù)表示超出</p><p> printf("沒(méi)有足夠庫(kù)存!\n");</p><p><b> break;</b></p><p><b> }</b></p><
99、;p> dayin[i]=1;//銷(xiāo)售的商品標(biāo)記打印為1;用于打印小票</p><p> geshu[i]=shuliang;</p><p> shp[i].kucun-=shuliang;//庫(kù)存=原庫(kù)存-銷(xiāo)售數(shù)量</p><p> zongjine+=shp[i].xiaoshoudanjia*shuliang;//計(jì)算應(yīng)付金額</p>
100、;<p> chengben+=shp[i].jinhuodanjia*shuliang;//計(jì)算成本</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b&
101、gt; }</b></p><p> if(i==zhonglei) printf("沒(méi)有此商品!\n");</p><p> printf("\n是否繼續(xù)購(gòu)買(mǎi)(y/n):");</p><p> fflush(stdin);</p><p> scanf("%c&quo
102、t;,&choose);</p><p> }while(choose=='y'||choose=='Y'||i==zhonglei);</p><p> printf("應(yīng)付金額%.2f\n",zongjine);</p><p> printf("實(shí)付金額:");</p&
103、gt;<p> fflush(stdin);</p><p> scanf("%f",&shifu);</p><p> zhaoling=shifu-zongjine;</p><p><b> }</b></p><p> printf("是否打印小票(y
104、/n)");</p><p> fflush(stdin);</p><p> scanf("%c",&choose);</p><p> if(choose=='y'||choose=='Y')//打印小票</p><p><b> {</b>
105、;</p><p> printf("\n\n條形碼\t名稱(chēng)\t銷(xiāo)售單價(jià)\t數(shù)量\t金額\n");</p><p> for(i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(dayin[i]==1)</p><p&
106、gt;<b> {</b></p><p> printf("%s\t%s\t%.2f\t\t%d\t%.2f\n",shp[i].tiaoxinma,shp[i].name,shp[i].xiaoshoudanjia,geshu[i],shp[i].xiaoshoudanjia*geshu[i]);</p><p><b> }&
107、lt;/b></p><p><b> }</b></p><p> if(zhenjia==1) printf("使用%d積分!\n",shiyongjifen);</p><p> printf("應(yīng)付金額%.2f元\t實(shí)付金額%.2f元\t找零%.2f元\n",zongjine,shif
108、u,zhaoling);</p><p><b> }</b></p><p> yingli+=zongjine-chengben;//盈利=收入金額-成本</p><p> zongjine=0;</p><p> chengben=0;</p><p> Saveshangpin(
109、);</p><p><b> }</b></p><p> void lirun()//利潤(rùn)函數(shù)</p><p><b> {</b></p><p> printf("共接受了%d的抵價(jià)積分!\n",zongjifen);//顯示共接受的積分量</p>
110、<p> printf("今日已賺%.2f元\n",yingli);//顯示盈利量</p><p><b> }</b></p><p> void shanchu()//刪除商品</p><p><b> {</b></p><p> Loadshangpi
111、n();</p><p> char tiaoma[50];</p><p> char choose;</p><p><b> do</b></p><p><b> {</b></p><p> printf("請(qǐng)輸入要?jiǎng)h除的商品的條碼:"
112、);</p><p> fflush(stdin);</p><p> scanf("%s",tiaoma);</p><p> for(int i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(shp[i].
113、kucun!=-1)</p><p><b> {</b></p><p> if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到要?jiǎng)h除的商品</p><p><b> {</b></p><p> printf("\n原信息如下:\n")
114、;</p><p> printf("\t商品名:%s\t進(jìn)貨單價(jià):%.2f\t銷(xiāo)售單價(jià):%.2f庫(kù)存:%d\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia,shp[i].kucun);</p><p> shp[i].kucun=-1; //刪除則將庫(kù)存標(biāo)為負(fù)數(shù)</p><p&g
115、t; printf("該商品已刪除!\n");</p><p><b> break;</b></p><p><b> }</b></p><p> if(i==zhonglei) //沒(méi)有找到商品</p><p><b> {</b></
116、p><p> printf("沒(méi)有此商品!\n"); </p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</
117、b></p><p> printf("\n是否繼續(xù)刪除(y/n):");</p><p> fflush(stdin);</p><p> scanf("%c",&choose);</p><p> }while(choose=='y'||choose=='
118、;Y');</p><p> Saveshangpin();</p><p><b> }</b></p><p> void xiugai()//修改商品</p><p><b> {</b></p><p> Loadshangpin();</p&
119、gt;<p> char tiaoma[50];</p><p> char choose;</p><p><b> do{</b></p><p> printf("請(qǐng)輸入要修改的商品條碼:");</p><p> fflush(stdin);</p><
120、;p> scanf("%s",tiaoma);</p><p> for(int i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(shp[i].kucun>=0) //判斷是否被刪除</p><p><b>
121、{</b></p><p> if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到要修改的商品</p><p><b> {</b></p><p> printf("\n原信息如下:\n");</p><p> printf("\t商品名
122、:%s\t進(jìn)貨單價(jià):%.2f\t銷(xiāo)售單價(jià):%.2f庫(kù)存:%d\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia,shp[i].kucun);</p><p> printf("\n修改商品名:");</p><p> fflush(stdin);</p><p> s
123、canf("%s",shp[i].name);</p><p> printf("修改進(jìn)貨單價(jià):");</p><p> fflush(stdin);</p><p> scanf("%f",&shp[i].jinhuodanjia);</p><p> printf
124、("修改銷(xiāo)售單價(jià):");</p><p> fflush(stdin);</p><p> scanf("%f",&shp[i].xiaoshoudanjia);</p><p> printf("修改庫(kù)存:");</p><p> scanf("%d&qu
125、ot;,&shp[i].kucun);</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(i==zhonglei)</p><p> pr
126、intf("沒(méi)有此貨物!\n");</p><p><b> }</b></p><p> printf("\n是否繼續(xù)修改?(y/n)");</p><p> fflush(stdin);</p><p> scanf("%c",&choose
127、);</p><p> }while(choose=='y'||choose=='Y');</p><p> Saveshangpin();</p><p><b> }</b></p><p> void liulanshp()//瀏覽所有商品</p><p&
128、gt;<b> {</b></p><p> printf("條形碼\t名稱(chēng)\t銷(xiāo)售單價(jià)\t進(jìn)貨單價(jià)\t庫(kù)存\n");</p><p> for(int i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(shp[
129、i].kucun>=0)</p><p><b> {</b></p><p> if(shp[i].jinhuodanjia!=0)//判斷是否存在</p><p><b> {</b></p><p> printf("%s\t%s\t%.2f\t\t%.2f\t\t%d
130、\n",shp[i].tiaoxinma,shp[i].name,shp[i].xiaoshoudanjia,shp[i].jinhuodanjia,shp[i].kucun);</p><p><b> }</b></p><p><b> }</b></p><p> if(zhonglei==i) b
131、reak;</p><p><b> }</b></p><p><b> }</b></p><p> void sousuo()//搜索商品</p><p><b> {</b></p><p> char tiaoma[50];</
132、p><p> printf("請(qǐng)輸入您要查找的商品條形碼:");</p><p> fflush(stdin);</p><p> scanf("%s",tiaoma);</p><p> for(int i=0;i<zhonglei;i++)</p><p><
133、b> {</b></p><p> if(shp[i].kucun>=0)//判斷是否存在</p><p><b> {</b></p><p> if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到商品</p><p><b> {</b
134、></p><p> printf("\n條形碼\t名稱(chēng)\t銷(xiāo)售單價(jià)\t進(jìn)貨單價(jià)\t庫(kù)存\n");</p><p> if(shp[i].jinhuodanjia!=0)</p><p> printf("%s\t%s\t%.2f\t\t%.2f\t\t%d\n",shp[i].tiaoxinma,shp[i].n
135、ame,shp[i].xiaoshoudanjia,shp[i].jinhuodanjia,shp[i].kucun);</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(
136、zhonglei==i) </p><p><b> {</b></p><p> printf("沒(méi)有此商品!\n");</p><p><b> }</b></p><p><b> }</b></p><p><b
137、> }</b></p><p> void tianjia()//添加貨物數(shù)量</p><p><b> {</b></p><p> Loadshangpin();</p><p> char choose;</p><p> char tiaoma[50];<
138、;/p><p> int jia=0;</p><p><b> do</b></p><p><b> {</b></p><p> printf("請(qǐng)輸入條形碼:");</p><p> fflush(stdin);</p><
139、;p> scanf("%s",tiaoma);</p><p> for(int i=0;i<zhonglei;i++)</p><p><b> {</b></p><p> if(shp[i].kucun>=0)</p><p><b> {</b>
140、;</p><p> if(strcmp(tiaoma,shp[i].tiaoxinma)==0)//找到要添加的商品</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p>&l
141、t;p> if(i==zhonglei) </p><p><b> {</b></p><p> printf("沒(méi)有此商品!\n");</p><p><b> break;</b></p><p><b> }</b></p>
142、;<p> printf("\n原信息如下:\n");</p><p> printf("\t商品名:%s\t進(jìn)貨單價(jià):%.2f\t銷(xiāo)售單價(jià):%.2f庫(kù)存:%d\n",shp[i].name,shp[i].jinhuodanjia,shp[i].xiaoshoudanjia,shp[i].kucun);</p><p> prin
143、tf("\n請(qǐng)輸入添加的數(shù)量:");</p><p> fflush(stdin);</p><p> scanf("%d",&jia);</p><p> shp[i].kucun=shp[i].kucun+jia;</p><p> printf("\n是否繼續(xù)添加(y/n
144、)");</p><p> fflush(stdin);</p><p> scanf("%c",&choose);</p><p> }while(choose=='y'||choose=='Y');</p><p> Saveshangpin();</p&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 超市收銀系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)---超市收銀管理系統(tǒng)設(shè)計(jì)
- 超市收銀管理系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)
- 超市收銀管理系統(tǒng)課程設(shè)計(jì)
- java課程設(shè)計(jì)超市收銀系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)-小型超市管理系統(tǒng)
- 超市收銀系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--超市收銀系統(tǒng)
- 面向?qū)ο笳n程設(shè)計(jì)--模擬超市收銀系統(tǒng)
- 超市收銀程序java課程設(shè)計(jì)
- j2ee課程設(shè)計(jì)超市收銀系統(tǒng)
- java課程設(shè)計(jì)--超市管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--超市收銀管理
- 畢業(yè)設(shè)計(jì)小型超市收銀系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- c課程設(shè)計(jì)報(bào)告-超市管理系統(tǒng)
- 【課程設(shè)計(jì)】c語(yǔ)言課程設(shè)計(jì)
- 庫(kù)存管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)---超市收銀管理系統(tǒng)
- 數(shù)字排序的設(shè)計(jì)與實(shí)現(xiàn)c語(yǔ)言課程設(shè)計(jì)報(bào)告
- java語(yǔ)言課程設(shè)計(jì)-小型超市管理系統(tǒng)
- 小型超市收銀設(shè)計(jì)與實(shí)現(xiàn)大學(xué)設(shè)計(jì)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論