計算機技術(shù)基礎(chǔ)c語言課程設(shè)計--花店經(jīng)營管理系統(tǒng)_第1頁
計算機技術(shù)基礎(chǔ)c語言課程設(shè)計--花店經(jīng)營管理系統(tǒng)_第2頁
計算機技術(shù)基礎(chǔ)c語言課程設(shè)計--花店經(jīng)營管理系統(tǒng)_第3頁
計算機技術(shù)基礎(chǔ)c語言課程設(shè)計--花店經(jīng)營管理系統(tǒng)_第4頁
計算機技術(shù)基礎(chǔ)c語言課程設(shè)計--花店經(jīng)營管理系統(tǒng)_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、計算機技術(shù)基礎(chǔ)課程設(shè)計C語言設(shè)計報告題目:花店經(jīng)營管理系統(tǒng)一選題背景 本例實現(xiàn)了一個花店經(jīng)營的管理系統(tǒng),在經(jīng)營的過程中,必需對花的庫存量,銷售量,剩余量以及花的種類,單價,顏色,名字等,有系統(tǒng)的管理。本程序定義了一個結(jié)構(gòu)數(shù)組,并運用了一個主函數(shù)調(diào)用五個函數(shù)以實現(xiàn)整個花店的經(jīng)營和管理。二設(shè)計思想: 編程思路:首先在程序開始處,引入了頭文件,可以直接調(diào)用函數(shù),然后對花的種類和五項命令進行了宏定義,接著枚舉類型定義了花的顏色,定義了結(jié)構(gòu)體數(shù)組,并且編寫了”enter_data()”,”put_data()”,“buy()”,”find()”,”changecmd()”五個子函數(shù),最后在mian函數(shù)的

2、內(nèi)部對各個子函數(shù)進行調(diào)用,實現(xiàn)綜合管理。 三主要解決問題的方法及技術(shù)關(guān)鍵: 1運用指針定義了五項命令,分別指向五個函數(shù),便于調(diào)用。 2運用了for, if-else-if, while, switch-case用來控制程序的流程。 主函數(shù)流程圖 開 始 系統(tǒng)初始化 退 出判斷是否為(quit)命令 接受鍵盤命令退 出Buy() enter()Find()命令轉(zhuǎn)換(把字符命令轉(zhuǎn)換為數(shù)字命令)是Put()否Buy()流程圖否是是入 口提 示 信 息輸入花名,價格選擇花的種類和數(shù)量從i=0起,到第i個花開始比較是否出現(xiàn)該種花輸出計算價格出 口是否是最后一朵花返 回 i+否Put()流程圖 入 口 輸

3、出花的各項值 否判 斷 isize 是輸出花的各項的值進行switch,根據(jù)所需內(nèi)容,選擇執(zhí)行。輸出花的單價和數(shù)量出 口 Enter()流程圖沒有所要選擇的顏色輸入你選擇的顏色判斷是否有所選擇的顏色輸入花的各項值判 斷isize提示信息入 口出 口否是是否i+是否i+是否i+Find()流程圖 入 口提 示 信 息輸入查找類型是否按名字查詢從i=0,到第i個花開始比較是否有這種花輸出花名,顏色,單價數(shù)量出 口是否按價格查詢從i=0,到第i個花開始比較是否有這種花輸出花名,顏色,單價數(shù)量出 口是否按顏色查詢從i=0,到第i個花開始比較是否有這種花輸出花名,顏色,單價出 口 , 五程序清單#inc

4、lude stdio.h#include stdlib.h#include string.h#include dos.h#define SIZE 8#define CMDSIZE 5typedef enum /*枚舉類型定義*/red,white,yellow,purple,orangeCOLOR;typedef struct /*結(jié)構(gòu)體定義*/char name20; COLOR color;float rate;int amount;FLOWER;char *Dcmd=buy,put,look,find,help; /*定義了5項命令的指針類型*/void enter_data(FLOWE

5、R flower); /*定義庫存輸入函數(shù)*/float buy(FLOWER flower); /*定義銷售函數(shù)*/void put_data(FLOWER flower); /*定義庫存輸出函數(shù)*/void findflower(FLOWER flower);/*定義查詢函數(shù)*/int changecmd(char cmd);/*定義命令解釋函數(shù)*/void main()FLOWER flowerSIZE;float price;char cmd5=0,0,0,0,0;char exits5=quit;int recmd=0;int i;for(i=0;iSIZE;i+)memset(fl

6、,0,20); /*成員設(shè)置,各類型初始化*/floweri.rate=0;floweri.amount=0;floweri.color=white;printf(花店經(jīng)營管理系統(tǒng)n);printf(nYou can input buy,look,put,help,find:n);while(1) /*命令轉(zhuǎn)換,把字符轉(zhuǎn)換為數(shù)字*/scanf(%s,cmd);if(strcmp(cmd,exits)=0)exit(1);recmd=changecmd(cmd);switch(recmd)case 0:printf(a bad command please input a c

7、orrcet cmd n); /*輸入了錯誤信息的提示*/break;case 1:price=buy(flower);if(price=0)printf(nSorry,buy error);elseprintf(n OK,Please pay money %f n,price);break;case 2:enter_data(flower);break;case 3:put_data(flower);break;case 4:findflower(flower);break;case 5:printf(nYoucaninput buy,look,put,help,find:n);break;

8、/*命令解釋函數(shù)*/*該函數(shù)處理接收到的命令 通過與命令數(shù)組里的預(yù)定義命令比較 返回命令在數(shù)組中的位置*/int changecmd(char cmd)int i=0;for(i=0;iCMDSIZE;i+)if(strcmp(cmd,Dcmdi)=0)return i+1;return 0;/*庫存輸入函數(shù)*/*該函數(shù)接受鍵盤輸入 把輸入數(shù)據(jù)與庫存對應(yīng)*/void enter_data(FLOWER flower)int i,flag;for(i=0;iredt1-whitet2-yellowt3-purplet4-oranten);printf(Please choose a color:

9、n);scanf(%d,&floweri.color);if(floweri.color=0&floweri.color=4)flag=0;elseprintf(Not have this colorn);/*輸出現(xiàn)有庫存的鮮花數(shù)據(jù)的函數(shù)定義*/void put_data(FLOWER flower)int i;printf(nName Color Rate Amountn);for(i=0;iredt1-whitet2-yellowt3-purplet4-oranten);printf(Please choose a color:n);scanf(%d,&color);if(color=0&

10、color=4)flag=0;elseprintf(Not have this colorn);printf(Please amount you want to buy:n);/*輸出需要的花的數(shù)量*/scanf(%d,&amount);for(i=0;iSIZE;i+)if(floweri.rate=rate&strcmp(,name)=0&floweri.color=color)break;if(i=SIZE)printf(nNot fount the flower you buyn);/*沒有要買的花*/price=0;else if(floweri.amount

11、find as namet 1-find as rate t 2-find as colorn);scanf(%d,&rcmd);switch(rcmd)case 0: /*按花名查詢*/printf(In put a flower name:n);scanf(%s,name);for(i=0;iSIZE;i+)if(=name)printf(%st%dt%ft%dn,,floweri.color,floweri.rate,floweri.amount);break;case 1: /*按數(shù)量查詢*/printf(In put a flower rate:n);scanf(%f,&rate);for(i=0;iSIZE;i+)if(floweri.rate=rate)printf(%st%dt%ft%dn,,floweri.color,floweri.rate,floweri.amount);break;case 2: /*按顏色查詢*/printf(In put a flower color:n);scanf(%d,&color);for(i=0;iSIZE;i+)if(floweri.color=color)printf(%st%d

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論