C語(yǔ)言課程設(shè)計(jì)-超市管理系統(tǒng)_第1頁(yè)
C語(yǔ)言課程設(shè)計(jì)-超市管理系統(tǒng)_第2頁(yè)
C語(yǔ)言課程設(shè)計(jì)-超市管理系統(tǒng)_第3頁(yè)
C語(yǔ)言課程設(shè)計(jì)-超市管理系統(tǒng)_第4頁(yè)
C語(yǔ)言課程設(shè)計(jì)-超市管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1課程設(shè)計(jì)的目的隨著社會(huì)的發(fā)展,超市成為百姓購(gòu)買日常用品的首選之地,琳瑯滿目的商品在管理方面也是一大問(wèn)題,超市對(duì)商品的管理統(tǒng)計(jì)是很重要的,因此一個(gè)超市商品管理系統(tǒng)可以大大地幫助超市人員管理商品情況。以下程序供參考使用:該程序一共有5個(gè)模塊6個(gè)選項(xiàng),不但可以進(jìn)行超市商品信息的顯示,修改,刪除,更可以對(duì)商品的價(jià)格進(jìn)行統(tǒng)計(jì),對(duì)商品的進(jìn)貨價(jià)格 出貨價(jià)格 以及凈利潤(rùn)等進(jìn)行統(tǒng)計(jì),操作界面簡(jiǎn)潔,方便的進(jìn)行操作。程序用了指針、鏈表、數(shù)組.結(jié)構(gòu)體等知識(shí)點(diǎn),可運(yùn)用于小的管理軟件。軟件運(yùn)用菜單實(shí)現(xiàn)交互式 管理,用戶輕松的按鍵既可實(shí)現(xiàn)對(duì)軟件的操作,操作簡(jiǎn)單,功能使用可以滿足一般小型超市的管理,用戶對(duì)進(jìn)貨出貨的價(jià)格數(shù)量

2、一目了然。 2 2設(shè)計(jì)方案論證21設(shè)計(jì)思路建立一個(gè)全局鏈表,在內(nèi)存中存儲(chǔ)數(shù)據(jù),例如:商品數(shù)量 出貨進(jìn)貨價(jià)格等。主函數(shù)可以調(diào)用5個(gè)模塊函數(shù),分別完成增加,顯示,修改,刪除,商品詳細(xì),結(jié)束等功能。在主函數(shù)中可以設(shè)置調(diào)用5個(gè)函數(shù)的方法,按1,2,3,4,5,6數(shù)字鍵,則分別可以執(zhí)行某個(gè)功能模塊。 主要功能模塊即如圖1所示:顯示全部息商品買賣操作登陸商品信息刪除商品信息庫(kù)存商品修改結(jié)束商品管理圖1.超市管理功能模塊2.2.程序設(shè)計(jì)自定義函數(shù)就是一般先進(jìn)行函數(shù)聲明,然后進(jìn)行定義。 數(shù)據(jù)結(jié)構(gòu)體的定義:將一個(gè)貨物的信息作為一個(gè)結(jié)構(gòu)體,由于利用鏈表所以在結(jié)構(gòu)體中別忘記指向后繼結(jié)點(diǎn)的指針。如下: struct

3、student int no; char name20; int zong; float jin; float chu; int chuliang; float sort; int kucun;float xiaoshousum; float jingliave; ;main()主函數(shù):主函數(shù)是程序的入口,利用循環(huán)語(yǔ)句,當(dāng)運(yùn)行到指定函數(shù)入口時(shí),跳出循環(huán),執(zhí)行其他模塊方法,當(dāng)選擇退出時(shí)結(jié)束整個(gè)程序。商品詳細(xì)信息如圖2顯示商品信息開始結(jié)束圖2顯示信息買賣信息如圖3輸入商品編號(hào)商品是否存在NY開始結(jié)束修改買賣數(shù)量數(shù)量是否正確NY圖3.查詢信息刪除信息如圖4開始輸入要?jiǎng)h除的商品ID該商品是否存在刪除該

4、商品信息結(jié)束YN圖4.刪除信息修改信息如圖5開始輸入商品編號(hào)商品是否存在修改商品信息結(jié)束YN圖5 修改信息2.3.源程序#include #include #include #include #define MAX 50 void prudctInfo(); void sort(); void prudctgoto(); void prudctinsert();void prudctdelete();void prudctupdate();void average(); int now_no=0; struct student int no; char name20; int zong; fl

5、oat jin; float chu; int chuliang; float sort; int kucun;float xiaoshousum; float jingliave; ; struct student stuMAX,*p; main()/主函數(shù) char as; start: printf(tttt超市商品管理系統(tǒng)nn); /一下為功能選擇模塊 do printf(ntttt1.商品詳細(xì)ntttt2.商品買賣ntttt3.庫(kù)存商品登陸ntttt4.庫(kù)存商品刪除ntttt5.庫(kù)存商品修改ntttt6.退出n); printf(tttt選擇功能選項(xiàng):); as=getch(); s

6、witch(as) case 1: system(cls); prudctInfo(); break; case 2: system(cls); prudctgoto(); break; break; case 3: system(cls); prudctinsert(); break; case 4: system(cls); prudctdelete(); break; case 5: system(cls); prudctupdate(); break; case 6: system(exit); exit(0); default: system(cls); goto start; wh

7、ile(1); /至此功能選擇結(jié)束 void prudctInfo()/顯示數(shù)據(jù)函數(shù) int i; char as; float ave; do printf(tt商品詳細(xì)n); printf(t編號(hào)t商品名t庫(kù)存t單價(jià)t銷售數(shù)t銷售額t凈利潤(rùn)n); for(i=0;inow_no;i+) stui.kucun=stui.zong-stui.chuliang; stui.xiaoshousum=stui.chu*stui.chuliang;stui.jingliave=stui.chu*(stui.chu-stui.jin); printf(t%d t%s t%d t%.2ft%dt%.2ft

8、%.2fn, stui.no,,stui.kucun,stui.chu,stui.chuliang,stui.xiaoshousum,stui.jingliave); printf(tt按任意鍵返回主菜單.); as=getch(); goto exit; while(as!=n); exit: system(cls); void prudctgoto()/插入數(shù)據(jù)函數(shù) int i=0; char ch; int numberID=0;int geshu=0;int a =0;do printf(tt商品一覽n); printf(t編號(hào)t商品名t庫(kù)存t單價(jià)n); for(i=

9、0;inow_no;i+) stui.kucun=stui.zong-stui.chuliang; printf(t%d t%s t%d t%.2fn, stui.no,,stui.kucun,stui.chu); a =-1;printf(n商品編號(hào):); scanf(%d,&numberID);for(i=0;inow_no;i+) if(stui.no=numberID) a=i; if(a=-1)printf(沒這個(gè)商品!); ch=getch(); system(cls); elseprintf(n賣出個(gè)數(shù):); scanf(%d,&geshu);if(stua.z

10、onggeshu)printf(沒這么多商品); ch=getch(); system(cls); elsefflush(stdin);stua.chuliang = geshu;printf(是否繼續(xù)輸入?(Y/N); ch=getch(); system(cls); while(ch!=n); system(cls); void prudctinsert()/原始數(shù)據(jù)錄入模塊 int i=0; char ch; do printf(tttt1.輸入商品信息n輸入第%d個(gè)商品情報(bào)n,i+1); printf(n登陸商品編號(hào):); scanf(%d,&stui.no); fflush(stdi

11、n); printf(n登陸商品名:); fflush(stdin); gets(); printf(n登陸超市進(jìn)貨商品個(gè)數(shù):); fflush(stdin); scanf(%d,&stui.zong); printf(n登陸商品進(jìn)貨單價(jià):); fflush(stdin); scanf(%f,&stui.jin); printf(n登陸商品售出單價(jià):); fflush(stdin); scanf(%f,&stui.chu); stui.chuliang=0;printf(nn); i+; now_no=i; printf(%d,now_no); printf(是否繼續(xù)輸入?(

12、Y/N); ch=getch(); system(cls); while(ch!=n); system(cls); void prudctdelete()int inum,i,j; printf(輸入要?jiǎng)h除商品編號(hào):); fflush(stdin); scanf(%d,&inum); for(i=0;inow_no;i+) if(stui.no=inum) for(j=i;jnow_no;j+) stui=stui+1; now_no=now_no-1; break; system(cls); void prudctupdate()char ch; do printf(ntt輸入新商品信息n)

13、; printf(n登陸商品編號(hào):); scanf(%d,&stunow_no.no); fflush(stdin); printf(n登陸商品名:); fflush(stdin); gets(stunow_); printf(n登陸超市進(jìn)貨商品個(gè)數(shù):); fflush(stdin); scanf(%d,&stunow_no.zong); printf(n登陸商品進(jìn)貨單價(jià):); fflush(stdin); scanf(%f,&stunow_no.jin); printf(n登陸商品售出單價(jià):); fflush(stdin); scanf(%f,&stunow_no.chu);

14、printf(n登陸超市商品賣去個(gè)數(shù):); fflush(stdin); scanf(%d,&stunow_no.chuliang); printf(nn); now_no=now_no+1; printf(是否繼續(xù)輸入?(Y/N); ch=getch(); system(cls); while(ch!=n); void sort()/排序數(shù)據(jù)函數(shù) struct student temp; int i,j; for(i=1;inow_no;i+) for(j=1;j=now_no-i;j+) if(stuj-1.jingliavestuj.jingliave) temp=stuj; stuj=

15、stuj-1; stuj-1=temp; 3設(shè)計(jì)結(jié)果與分析在VC 6.0環(huán)境中輸入源程序,在沒有提示錯(cuò)誤的情況下編譯,生成.exe可執(zhí)行文件。運(yùn)行程序,會(huì)看到如圖6所示界面。運(yùn)行主函數(shù)時(shí),首先調(diào)用函數(shù)main圖6 程序主界面這個(gè)界面是運(yùn)行函數(shù)后首先出現(xiàn)的界面,運(yùn)行函數(shù)時(shí),該函數(shù)是一個(gè)菜單函數(shù),用switch語(yǔ)句來(lái)實(shí)現(xiàn)各功能模塊的轉(zhuǎn)移,出來(lái)該頁(yè)面后用戶可根據(jù)提示輸入信息,從而實(shí)現(xiàn)各種目的。鍵盤輸入1,進(jìn)入商品詳細(xì)目錄 用以顯示全部商品詳細(xì)信息圖7 顯示信息界面該頁(yè)面用printf輸出,在利用指針讀出鏈表中數(shù)據(jù)并利用合理計(jì)算 計(jì)算出凈利潤(rùn)等數(shù)據(jù),再用while語(yǔ)句進(jìn)行循環(huán)輸出部數(shù)據(jù)輸入2按回車進(jìn)入

16、商品買賣頁(yè)面。如圖8所示圖8 買賣信息界面用scanf輸入數(shù)據(jù),用if語(yǔ)句和while語(yǔ)句來(lái)實(shí)現(xiàn)循環(huán)每一次修改的數(shù)據(jù)輸入3按回車會(huì)進(jìn)入商品登陸頁(yè)面,此頁(yè)面用來(lái)登陸商品。如圖9所示圖9 登錄信息界面將數(shù)據(jù)登陸入鏈表個(gè)變量中輸入4按回車進(jìn)入商品修改模塊如圖10所示圖10修改信息界面6輸入5按回車進(jìn)入商品刪除模塊如圖11所示使用printf()函數(shù)和scanf( )函數(shù),并且利用指針從而實(shí)現(xiàn)各種功能。其中用到了while循環(huán)語(yǔ)句,實(shí)現(xiàn)對(duì)鏈表中個(gè)數(shù)據(jù)的重寫功能。運(yùn)行完后退出該函數(shù)圖11刪除信息界面4設(shè)計(jì)體會(huì)這次計(jì)算機(jī)C語(yǔ)言程序設(shè)計(jì)是一次綜合性設(shè)計(jì),它不僅檢驗(yàn)了我這個(gè)學(xué)期C語(yǔ)言程序?qū)W的是否扎實(shí),同時(shí)也使我在高級(jí)語(yǔ)言設(shè)計(jì)上有所提高,我從中得到了很深的體會(huì)原來(lái)計(jì)算機(jī)語(yǔ)言是如此的神奇。題目中設(shè)計(jì)到了很多本學(xué)期沒有學(xué)透的內(nèi)容,如:函數(shù)的調(diào)用和結(jié)構(gòu)體的定義和使用,通過(guò)這次設(shè)計(jì)讓我對(duì)這些內(nèi)容有了進(jìn)一步的了解,重要的是我能過(guò)使用這些東西編一個(gè)使用的程序??偠灾?,這次高級(jí)語(yǔ)言課程設(shè)計(jì)給了我一次很大的鍛煉

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論