版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、(一)、設(shè)計內(nèi)容與設(shè)計要求1. 設(shè)計內(nèi)容:設(shè)計課題四:銷售管理系統(tǒng)一、問題描述:通過本系統(tǒng)實現(xiàn)對 N 個銷售員信息的錄入、顯示、添加、刪除,以及對產(chǎn)品銷售額的排序等操作的管理。二、功能描述:1、本系統(tǒng)采用一個包含 n 個數(shù)據(jù)的結(jié)構(gòu)體數(shù)組,每個數(shù)據(jù)的結(jié)構(gòu)應當包括:姓名、身份、產(chǎn)品 1 銷售額、產(chǎn)品 2 銷售額、總產(chǎn)品銷售額。2、本系統(tǒng)顯示這樣的菜單:銷售管理系統(tǒng)1、銷售員信息輸入2、銷售員信息輸出3、刪除銷售員4、添加銷售員5、銷售額排序6、統(tǒng)計產(chǎn)品銷售額7、保存銷售額信息0、退出系統(tǒng)3、執(zhí)行一個具體的功能之后,程序?qū)⒅匦嘛@示菜單。4、將系統(tǒng)信息保存在文件中。三、算法提示:1、數(shù)據(jù)結(jié)構(gòu):結(jié)構(gòu)體類
2、型數(shù)組2、數(shù)據(jù)庫結(jié)構(gòu):下表構(gòu)成該系統(tǒng)的基本數(shù)據(jù)庫姓名身份產(chǎn)品1 銷售額產(chǎn)品1 銷售額總產(chǎn)品銷售額charintintintint四、測試數(shù)據(jù):記錄數(shù) 20。2. 設(shè)計要求:1). 設(shè)計正確,方案合理。2). 界面友好,使用方便。3). 程序精煉,結(jié)構(gòu)清晰。4). 設(shè)計報告 5000 字以上,含程序設(shè)計說明,用戶使用說明,源程序清單及程序框圖。5). 上機演示。(二)、進度安排第一周課題講解,查閱資料總,體設(shè)計,詳細設(shè)計周日: 8:00 12:0014:00 18:00周一: 8:00 12:00周三: 14:00 18:00第二周編程,上機調(diào)試,修改程序,完善程序,答辯撰寫課程設(shè)計報告周二:
3、8:00 12:00周五: 14:00 18:00附:課程設(shè)計報告裝訂順序:封面、任務(wù)書、目錄、正文、評分、附件(程序清單)。正文的格式:一級標題用3 號黑體, 二級標題用四號宋體加粗,22A4 大小的圖紙及正文用小四號宋體;行正文的內(nèi)容:一、課題的主要功能;二、課題的功能模塊的劃分(要求畫出模塊圖)三、主要功能的實現(xiàn)(至少要有一個主要模塊的流程圖);四、程序調(diào)試;五、總結(jié);六、附件(所有程序的原代碼,要求對程序?qū)懗霰匾淖⑨專?。正文總字?shù)要求在5000 字以上(不含程序原代碼);目錄 1 1 5 6 6 7一、 需求分析1、程序的功能。程序要完成的功能有:(1)銷售員信息錄入(2)銷售員信息
4、顯示( 3)銷售額信息保存(4)產(chǎn)品總銷售額由大到小排序( 5)統(tǒng)計產(chǎn)品銷售額信息(6)插入銷售員及其信息(7)刪除銷售員及其信息(0)退出銷售管理系統(tǒng)2、輸入輸出的要求。輸入運用了 scanf 和 gets 函數(shù);輸出運用了printf函數(shù)。二、 概要設(shè)計1、程序由哪些模塊組成以及一個模塊之間的層次結(jié)構(gòu)、模塊的調(diào)用關(guān)系;每個模塊的功能。程序由主函數(shù) del ( ) 、排序voidmain() 、輸入 void input()void sort()、添加 void insert()、顯示 void show() 、刪除、統(tǒng)計 void statistic()void、保存 void save(
5、) 、退出 void exit() 等九個模塊組成。本系統(tǒng)涉及的知識點:分支,循環(huán),函數(shù),數(shù)組,結(jié)構(gòu)體,文件等。各個函數(shù)模塊的實現(xiàn)如下:(1) 關(guān)于 void main() :采用 switch 分支控制語句,通過鍵盤輸入值作為開關(guān)值,用以調(diào)用主菜單各大函數(shù),從而實現(xiàn)主控職能。 C 語言的函數(shù)調(diào)用遵循先定義后引用的原則,在程序的最開始就定義了眾多的全局變量,如 int i。其調(diào)用關(guān)系如下 :switch(i)case 0:printf(o退出銷售管理系統(tǒng)on);exit(0);break;case 1:printf(-銷售員信息錄入-n);input();break;case 2:printf
6、(-銷售員信息顯示-n);show();break;case 3:printf(-銷售額信息保存 -n);save();break;case 4:printf(-總銷售額信息排序 -n);sort();break;case 5:printf(-統(tǒng)計產(chǎn)品銷售額信息 -n);statistics_sailer();break;case 6:printf(-插入銷售員及其信息 -n);insert();break;case 7:printf(-刪除銷售員及其信息 -n);del();break;default:printf(輸入錯誤 , 請重新選擇 !);break;(2) 錄入函數(shù) void in
7、print () 的實現(xiàn):由主菜單按 1鍵進入。利用循環(huán)方式,將相關(guān)信息存入結(jié)構(gòu)體數(shù)組,結(jié)構(gòu)體組根據(jù)實際的紀錄條數(shù),建立銷售員信息。按照要求,分步依次錄入信息:銷售員個數(shù),銷售員姓名,銷售員工號,產(chǎn)品一銷售額,產(chǎn)品二銷售額,實現(xiàn)途徑為:void input()int i;printf(請輸入銷售員個數(shù) n);scanf(%d,&n);for(i=0;in;i+)printf(輸入銷售員姓名 :n);scanf(%s,);printf(輸入銷售員工號 :n);scanf(%s,selleri.num);printf(請分別輸入產(chǎn)品一和產(chǎn)品二的銷售額:n);scanf(%d
8、%d,&selleri.sailerl,&selleri.sailerm);system(cls);(3)顯示函數(shù)void show()的實現(xiàn):該功能是輸出銷售員中的所有信息:void show ()struct seller *p;system(cls);printf(姓名工號產(chǎn)品一銷售額產(chǎn)品二銷售額:n);for(p=seller;pname,p-num,p-sailerl,p-sailerm);printf(nn);( 4)排序函數(shù) void sort()的實現(xiàn):void sort()struct seller temp;int i,j;for(i=0;in;i+)selleri.sum
9、=selleri.sailerl+selleri.sailerm;for(j=0;jn-1;j+)for(i=0;in-1-j;i+)if(selleri.sumselleri+1.sum)temp=selleri;selleri=selleri+1;selleri+1=temp;system(cls);printf(姓名工號產(chǎn)品一銷售額產(chǎn)品二銷售額產(chǎn)品總銷售額 :n);for(i=0;in;i+)printf(n%st%st%dt%8dt%8dn,,selleri.num,se lleri.sailerl,selleri.sailerm,selleri.sum);(
10、5)統(tǒng)計函數(shù) void statistics_sailer ()的實現(xiàn):運用的語句是:void statistics_sailer ()int i,sum1,sum2,sum;sum1=0;sum2=0;sum=0;for(i=0;in;i+)sum1+=selleri.sailerl;sum2+=selleri.sailerm;sum=sum1+sum2;system(cls);printf(產(chǎn)品一的銷售額 :%dn,sum1);printf(產(chǎn)品二的銷售額 :%dn,sum2);printf(產(chǎn)品總的銷售額 :%dn,sum);( 6)保存函數(shù)void save ()運用以下語句實現(xiàn):vo
11、id save ()FILE *fp;int i;fp=fopen(seller.txt,w);for(i=0;in;i+)fwrite(&selleri,sizeof(struct seller),1,fp);system(cls);printf(nn);printf(保存成功 !n);printf(nn);( 7)刪除函數(shù) void del() 的實現(xiàn):輸入要刪除的銷售員的姓名。運用的語句是:void del()char seller_name20; int i,j;printf( 輸入要刪除銷售員的姓名 :); fflush(stdin); scanf(%s,seller_name);
12、for(i=0;in;i+)if(strcmp(seller_name,)=0)for(j=i;jn;j+)selleri=selleri+1;n=n-1;break;save();system(cls);2、此程序的數(shù)據(jù)庫存儲的數(shù)據(jù)為:銷售員的姓名、工號(身份) 、產(chǎn)品一的銷售額、產(chǎn)品二的銷售額、產(chǎn)品總的銷售額。三、 詳細設(shè)計1、采用 C語言定義相關(guān)的數(shù)據(jù)類型。struct sellerchar num10;char name20;int sailerl;int sailerm;int sum;seller200;2、畫出函數(shù)的調(diào)用關(guān)系圖。開始主函數(shù)( main)銷
13、售 員銷 售 員刪 除 銷添 加 銷統(tǒng) 計 產(chǎn)保 存 銷信 息 輸信 息 顯售員售員品 銷 售售 額 信入示( del)( insert額息( input )( show )statistic( save)退出( exit )四、調(diào)試分析以及設(shè)計體會1、問題以及解決問題的方法。在開始編程時我就遇到了問題,首先是心理問題,心里感到一個系統(tǒng)那么復雜要編出來真是太難了。然后在程序編寫過程中我遇到了函數(shù)沒有定義就運行的問題,一開始我還不知道,但通過向老師和同學詢問終于改正了這個問題。后來又遇到運行時出現(xiàn)刪除一個銷售員的信息,顯示時又出現(xiàn)它的問題,通過查詢原來是因為刪除后沒有保存,在刪除模塊中調(diào)入 sa
14、ve() 后就解決了2、課程設(shè)計過程經(jīng)驗教訓、心得體會。開始時我感到要我編一個程序真是太難了,但經(jīng)過看書、問老師和問同學將問題一個一個解決后我感覺收獲很大,這不僅僅是編了一個程序,而是感覺到了戰(zhàn)勝困難的一種快感,也增加了我學習 C語言的信心。五、 使用說明 。用戶使用手冊:歡迎使用本人開發(fā)的銷售管理系統(tǒng)。本系統(tǒng)具有以下功能菜單:(0)退出銷售管理系統(tǒng)(1) 銷售員信息錄入(2) 銷售員信息顯示(3) 銷售額信息保存(4) 產(chǎn)品總銷售額由大到小排序(5) 統(tǒng)計產(chǎn)品銷售額信息(6)插入銷售員及其信息(7)刪除銷售員及其信息進入此界面后請選擇數(shù)字0 8 進行操作。1. 錄入功能:在主菜單按下 1,按
15、照提示輸入錄入要錄入的銷售員人數(shù),銷售員的姓名,工號,產(chǎn)品一的銷售額,產(chǎn)品二的銷售額以 ENTER鍵結(jié)束輸入,輸入完后自動返回主菜單,再按鍵 1,則繼續(xù)錄入信息。2. 顯示功能:在主菜單界面按下鍵 2再按下 ENTER鍵就會顯示全部銷售員信息及出現(xiàn)主菜單。3. 保存功能:在主菜單按下 3,再按下 ENTER鍵,會出現(xiàn)“保存成功”字樣,并出現(xiàn)主菜單。4. 排序功能:在主菜單界面按下鍵 4 再按下 ENTER鍵,就會顯示按產(chǎn)品總銷售額排序后的全部銷售員信息并出現(xiàn)主菜單。5. 統(tǒng)計功能:在主菜單按下 5,再按下 ENTER鍵,所有銷售員產(chǎn)品一的銷售額、產(chǎn)品二的銷售額、產(chǎn)品總的銷售額,并出現(xiàn)主菜單。6
16、插入功能:在主菜單界面按下鍵 6 再按下 ENTER鍵,會顯示“請輸入銷售員的姓名”等提示,根據(jù)提示輸入銷售員的姓名、工號、產(chǎn)品一的銷售額、產(chǎn)品二的銷售額,輸入完成后會顯示 “是否繼續(xù)輸入 (Y/N) ”如果繼續(xù)輸入按 Y 不繼續(xù)輸入按 N如果按 N會顯示主菜單。7. 刪除功能:在主菜單界面按下鍵 6 再按下 ENTER鍵,會顯示“請輸入要刪除的銷售員的姓名” 等提示,輸入要刪除的銷售員的姓名后按下 ENTER 鍵,就刪除了要刪除的銷售員的信息。8. 操作結(jié)束后請按 3保存,再按 0推出系統(tǒng)。六、附錄1、參考書目:C 程序設(shè)計(第三版)2、源程序清單#include #include#incl
17、ude# include # include struct sellerchar num10; char name20; int sailerl;int sailerm; int sum;seller200; FILE *fp; int n;void main ()void insert(); void del();void input();void show();void save();void sort();void statistics_sailer();int i;while (1)printf(-n);printf( 銷售管理系統(tǒng) n); printf(n);printf(! 0退出
18、銷售管理系統(tǒng)!n);printf(!1銷售員信息錄入!n);printf(!2銷售員信息顯示!n);printf(!3銷售額信息保存!n);printf(!4產(chǎn)品總銷售額由大到小排序 !n);printf(!5統(tǒng)計產(chǎn)品銷售額信息!n);printf(!6插入銷售員及其信息!n);printf(!7刪除銷售員及其信息!n);printf(n);printf(請選擇系統(tǒng)的功能項n);printf(-n);scanf(%d,&i);switch(i)case 0:printf(o退出銷售管理系統(tǒng)on);exit(0);break;case 1:printf(-銷售員信息錄入 -n);input();
19、break;case 2:printf(-銷售員信息顯示 -n);show();break;case 3:printf(-銷售額信息保存 -n);save();break;case 4:printf(-總銷售額信息排序 -n);sort();break;case 5:printf(-統(tǒng)計產(chǎn)品銷售額信息 -n);statistics_sailer();break;case 6:printf(-插入銷售員及其信息 -n);insert();break;case 7:printf(-刪除銷售員及其信息 -n);del();break;default:printf(輸入錯誤 , 請重新選擇 !);br
20、eak;void input()int i;printf(請輸入銷售員個數(shù) n);scanf(%d,&n);for(i=0;in;i+)printf(輸入銷售員姓名 :n);scanf(%s,);printf(輸入銷售員工號 :n);scanf(%s,selleri.num);printf( 請分別輸入產(chǎn)品一和產(chǎn)品二的銷售額 :n); scanf(%d%d,&selleri.sailerl,&selleri.sailerm);system(cls);void show ()struct seller *p;system(cls);printf( 姓名 工號 產(chǎn)品一銷售額
21、 產(chǎn)品二銷售額 :n); for(p=seller;pname,p-num,p-sailerl,p-sailerm);printf(nn);void save ()FILE *fp;int i;fp=fopen(seller.txt,w);for(i=0;in;i+)fwrite(&selleri,sizeof(struct seller),1,fp);system(cls);printf(nn);printf(保存成功 !n);printf(nn);void sort()struct seller temp;int i,j;for(i=0;in;i+)selleri.sum=selleri.
22、sailerl+selleri.sailerm;for(j=0;jn-1;j+)for(i=0;in-1-j;i+)if(selleri.sumselleri+1.sum)temp=selleri;selleri=selleri+1;selleri+1=temp;system(cls);printf(姓名工號產(chǎn)品一銷售額產(chǎn)品二銷售額產(chǎn)品總銷售額 :n);for(i=0;in;i+)printf(n%st%st%dt%8dt%8dn,,selleri.num,se lleri.sailerl,selleri.sailerm,selleri.sum);void statistics_sailer ()int i,sum1,sum2,sum;sum1=0;sum2=0;sum=0;for(i=0;in;i+)sum1+=selleri.sailerl;sum2+=selleri.sailerm;sum=sum1+sum2;system(cls);printf(產(chǎn)品一的銷售額 :%dn,sum1);printf(產(chǎn)品二
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度倉儲物流供應鏈管理與運輸服務(wù)合同3篇
- 2024版土地免租租賃合同范本
- 二零二五年度旋挖鉆機在城市地鐵建設(shè)中的應用合同3篇
- 二零二五年度豪華家裝主材代購服務(wù)協(xié)議3篇
- 專業(yè)版融資擔保協(xié)議2024年版詳盡條款一
- 2024年電商渠道聯(lián)合運營協(xié)議版B版
- 二零二五年度甲乙雙方合作供應新能源設(shè)備協(xié)議2篇
- 二零二五版汽車行業(yè)人才培訓股份購買與就業(yè)服務(wù)合同3篇
- 2024新疆瓜果種植基地與電商平臺合作分紅協(xié)議3篇
- 二零二五版礦產(chǎn)廢石采購及再生利用合作協(xié)議3篇
- 米-伊林《十萬個為什么》閱讀練習+答案
- 碎屑巖油藏注水水質(zhì)指標及分析方法
- 【S洲際酒店婚禮策劃方案設(shè)計6800字(論文)】
- 醫(yī)養(yǎng)康養(yǎng)園項目商業(yè)計劃書
- 《穿越迷宮》課件
- 《C語言從入門到精通》培訓教程課件
- 2023年中國半導體行業(yè)薪酬及股權(quán)激勵白皮書
- 2024年Minitab全面培訓教程
- 社區(qū)電動車棚新(擴)建及修建充電車棚施工方案(純方案-)
- 項目推進與成果交付情況總結(jié)與評估
- 鐵路項目征地拆遷工作體會課件
評論
0/150
提交評論