



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、課程設(shè)計說明書題目設(shè)計一個簡單的產(chǎn)品管理系統(tǒng)系 ( 部 )計算機(jī)科學(xué)與技術(shù)專業(yè)(班級)姓名學(xué)號指導(dǎo)教師起止 日期2010年1月4日-2010年1月8日程序設(shè)計基礎(chǔ)課程設(shè)計任務(wù)書系_計算機(jī)科學(xué)與技術(shù)_專業(yè)_計算機(jī)科學(xué)與技術(shù)_班級_ _設(shè)計人、題目:設(shè)計一個簡單的產(chǎn)品管理系統(tǒng)目的與要求加強(qiáng)通過產(chǎn)品管理系統(tǒng)的設(shè)計,培養(yǎng)學(xué)生綜合利用C+語言進(jìn)行程序設(shè)計的能力, 函數(shù)的運(yùn)用及學(xué)生對軟件工程方法的初步認(rèn)識,提高軟件系統(tǒng)分析能力和程序文檔建 立、歸納總結(jié)的能力,培養(yǎng)學(xué)生利用系統(tǒng)提供的標(biāo)準(zhǔn)函數(shù)及典型算法進(jìn)行設(shè)計。2. ?基本要求:(1) 要求用C+模塊化設(shè)計的思想來完成程序的設(shè)計;(2) 要求使用結(jié)構(gòu)數(shù)組和結(jié)
2、構(gòu)指針,各個功能分別使用函數(shù)來完成,主函數(shù)和各 個函數(shù)分別存放在不同的.cpp文件中,要求使用頭文件;(3) 要求使用選擇法排序,折半查找法進(jìn)行查找。3. 創(chuàng)新要求在基本要求達(dá)到后,進(jìn)行創(chuàng)新設(shè)計,如進(jìn)行刪除或插入操作4. 書寫設(shè)計報告的要求設(shè)計報告中包含以下幾個方面:1、設(shè)計題目2、總體設(shè)計1)用自頂而下或自底而上的方法,劃分功能模塊。2)確定各模塊的算法3、根據(jù)算法畫出流程圖4、列出程序清單,并加以必要的注釋5、寫出調(diào)試程序的方法6、指出所設(shè)計問題的不足和改進(jìn)方案5 課程設(shè)計材料的裝訂順序為:1)設(shè)計說明書封面2)課程設(shè)計任務(wù)書3)課程設(shè)計鑒定表4)目錄5)設(shè)計報告書正文三、設(shè)計方法和基本原
3、理1 問題描述:某工廠有 5 種產(chǎn)品,每種產(chǎn)品包括:產(chǎn)品代碼,產(chǎn)品名稱,產(chǎn)品數(shù)量,銷售量, 要求編寫函數(shù)實現(xiàn)下面:(1)從鍵盤輸入這些產(chǎn)品的信息;(2)按照產(chǎn)品的庫存量進(jìn)行升序排序,使用選擇法排序,在主函數(shù)中輸出;(3)使用折半查找法進(jìn)行循環(huán)查詢, 當(dāng)用戶給出某種產(chǎn)品的代碼時, 在主函數(shù)中 顯示該產(chǎn)品的信息,如果沒找到則給出未找到的信息,退出程序的運(yùn)行;(4)輸出產(chǎn)品信息。 2問題的解決方案:根據(jù)問題的描述,可以按照程序要求的功能采用結(jié)構(gòu)化的設(shè)計思想。(1)產(chǎn)品的庫存量在輸入函數(shù)中求解或者編寫?yīng)毩⒑瘮?shù)求解;(2)在排序過程中, 結(jié)構(gòu)數(shù)組元素的交換可以整體進(jìn)行, 無需每個成員之間進(jìn)行 互換。(3
4、)使用折半查找法進(jìn)行查找之前,應(yīng)該先按照產(chǎn)品代碼進(jìn)行排序。四、主要技術(shù)問題的描述根據(jù)三的分析,主要問題在于:(1)結(jié)構(gòu)體的構(gòu)造除了產(chǎn)品的代碼( int code )、產(chǎn)品名稱 (char name) ,產(chǎn)品數(shù)量 (float amount) , 銷售量 (float sales) 外,還應(yīng)有產(chǎn)品的庫存量( float stock )(2)排序 在進(jìn)行完結(jié)構(gòu)數(shù)組中某個成員的比較后,不是某個成員的互換,而是結(jié)構(gòu)體數(shù)組元素 之間的互換。例如結(jié)構(gòu)體數(shù)組元素 proj 和 prok 的互換:t=proj; proj=proj+1; proj+1=t;(3) 各個函數(shù)的參數(shù)傳遞問題實參應(yīng)為結(jié)構(gòu)數(shù)組名,形參
5、為結(jié)構(gòu)體指針或者結(jié)構(gòu)體數(shù)組。如輸入函數(shù):void Input(PRODUCT *p ) / 結(jié)構(gòu)體指針作為形參/program code函數(shù)調(diào)用時:In put(pro); / pro為結(jié)構(gòu)體數(shù)組名五、課程設(shè)計時間:18周六、課程設(shè)計的考核方式及評分方法1 考核方式課程設(shè)計結(jié)束時,在機(jī)房當(dāng)場驗收。1) 教師提供測試數(shù)據(jù),檢查運(yùn)行結(jié)果是否正確。2) 回答教師提出的問題。3) 學(xué)生提交課程設(shè)計文檔(A4紙打印)2.評分方法上機(jī)檢查:書面報告=7 :3,沒有通過上機(jī)檢查的其成績直接記錄不及格指導(dǎo)教師簽名: 日期:教研室主任簽名: 日期:系主任簽名: 日期:長沙學(xué)院課程設(shè)計鑒定表姓名學(xué)號專業(yè)計算機(jī)科學(xué)
6、與 技術(shù)班級設(shè)計題目設(shè)計一個簡單的產(chǎn)品管理系統(tǒng)指導(dǎo)教師指導(dǎo)教師意見:評定等級:教師簽名:日期:答辯小組意見:評定等級:答辯小組長簽名:日期:教研室意見:教研室主任簽名:日期:系(部)意見:系主任簽名:日期:說明課程設(shè)計成績分“優(yōu)秀”、“良好”、“及格”、“不及格”四類;摘要用C+莫塊化設(shè)計的思想來完成該簡單的產(chǎn)品管理系統(tǒng)程序的設(shè)計, 使用結(jié)構(gòu)數(shù)組 和結(jié)構(gòu)指針, 各個功能分別使用函數(shù)來完成, 主函數(shù)和各個函數(shù)分別存放在不同的 .cpp 文件中,使用了頭文件,并使用選擇法排序,折半查找法進(jìn)行查找。關(guān)鍵詞: 產(chǎn)品管理系統(tǒng);莫塊化設(shè)計;結(jié)構(gòu)數(shù)組;結(jié)構(gòu)指針;選擇法排序;折半查找法。目錄1設(shè)計內(nèi)容與要求
7、12.設(shè)計說明 22.1 問題描述與功能設(shè)計 22.2 算法與數(shù)據(jù)結(jié)構(gòu) 42.3 函數(shù)定義 62.4 界面設(shè)計 92.5 編碼 122.6 測試 213總結(jié) 23參考文獻(xiàn) 25附錄A源代碼261 設(shè)計內(nèi)容與要求設(shè)計一個簡單的產(chǎn)品管理系統(tǒng):某工廠有 5 種產(chǎn)品,每種產(chǎn)品包括:產(chǎn)品代碼,產(chǎn)品名稱,產(chǎn)品數(shù)量,銷售量, 要求編寫函數(shù)實現(xiàn)下面:(1) 從鍵盤輸入這些產(chǎn)品的信息;(2) 按照產(chǎn)品的庫存量進(jìn)行升序排序,使用選擇法排序,在主函數(shù)中輸出;(3) 使用折半查找法進(jìn)行循環(huán)查詢,當(dāng)用戶給出某種產(chǎn)品的代碼時,在主函數(shù)中 顯示該產(chǎn)品的信息,如果沒找到則給出未找到的信息,退出程序的運(yùn)行;(4) 輸出產(chǎn)品信息
8、。?基本要求:(1要求用C+莫塊化設(shè)計的思想來完成程序的設(shè)計;( 2)要求使用結(jié)構(gòu)數(shù)組和結(jié)構(gòu)指針,各個功能分別使用函數(shù)來完成,主函數(shù)和各 個函數(shù)分別存放在不同的 .cpp 文件中,要求使用頭文件;( 3)要求使用選擇法排序,折半查找法進(jìn)行查找。創(chuàng)新要求:在基本要求達(dá)到后,進(jìn)行創(chuàng)新設(shè)計,如進(jìn)行刪除或插入操作。2. 設(shè)計說明2.1 問題描述與功能設(shè)計2.1.1 問題描述 :問題描述:某工廠有 5 種產(chǎn)品,每種產(chǎn)品包括:產(chǎn)品代碼,產(chǎn)品名稱,產(chǎn)品數(shù)量,銷售量, 要求編寫函數(shù)實現(xiàn)下面:( 1 ) 從鍵盤輸入這些產(chǎn)品的信息;( 2 ) 按照產(chǎn)品的庫存量進(jìn)行升序排序,使用選擇法排序,在主函數(shù)中輸出; 使用折
9、半查找法進(jìn)行循環(huán)查詢, 當(dāng)用戶給出某種產(chǎn)品的代碼時, 在主函數(shù)中顯示該 產(chǎn)品的信息, ( 3 ) 如果沒找到則給出未找到的信息,退出程序的運(yùn)行;( 4 ) 輸出產(chǎn)品信息。主要問題在于:( 1)結(jié)構(gòu)體的構(gòu)造除了產(chǎn)品的代碼( int code )、產(chǎn)品名稱 (char name) ,產(chǎn)品數(shù)量 (float amount) 銷售量 (float sales)外,還應(yīng)有產(chǎn)品的庫存量( float stock )(2)排序在進(jìn)行完結(jié)構(gòu)數(shù)組中某個成員的比較后,不是某個成員的互換,而是結(jié)構(gòu)體數(shù)組元素 之間的互換。例如結(jié)構(gòu)體數(shù)組元素 proj和prok的互換:t=proj; proj=proj+1; proj
10、+1=t;(3)各個函數(shù)的參數(shù)傳遞問題實參應(yīng)為結(jié)構(gòu)數(shù)組名,形參為結(jié)構(gòu)體指針或者結(jié)構(gòu)體數(shù)組。如輸入函數(shù):void Input(PRODUCT *p ) / 結(jié)構(gòu)體指針作為形參/program code函數(shù)調(diào)用時:In put(pro); / pro為結(jié)構(gòu)體數(shù)組名2.1.2功能設(shè)計:根據(jù)問題描述和設(shè)計要求,設(shè)計如下的功能:產(chǎn)品信息的輸入、全部產(chǎn)品信息的查看、單個產(chǎn)品信 息的按代碼查看、單個產(chǎn)品信息的修改。2.2算法與數(shù)據(jù)結(jié)構(gòu)2.2.1算法主函數(shù)1 曲rehimO:產(chǎn)品信息輸入產(chǎn)品庫存量升序產(chǎn)品代碼查找修改已輸入產(chǎn)品222數(shù)據(jù)結(jié)構(gòu) 本程序采用的數(shù)struct productint code;char
11、floatfloatfloatpro5;2.3函數(shù)定義我設(shè)計該程序一為:產(chǎn)品輸入,代碼查找,修改函數(shù)名分別為排列據(jù)結(jié)構(gòu)為:name10;amount;sales;stock;共定義了三個函數(shù),分別 產(chǎn)品庫存量升序排列,產(chǎn)品 已輸入產(chǎn)品信息,主界面。void in put()void sort()void search()void reput()void2.4界面設(shè)計2.5編碼desktop。本程序界面設(shè)計為i 口I: T;r匠管醞珮Wbugr品莒理系庇刊于理務(wù)空 管聲胃心患1 m亠一亙一n=Rr- RJOU uu JI 41 nils J! 亠嚴(yán)要口叩Eg品口鏡 入卷產(chǎn)產(chǎn)產(chǎn)系 進(jìn)擇蜃 迎囲曙_
12、查簾 歡請.B.MW*#請輸入粕應(yīng)的服務(wù)代碼,system(pause);system(cls);在我寫的程序中運(yùn)用了上面的語句,這個語句在程序中大量運(yùn)用,使得界面清晰明了,更加美觀。system(pause)用來暫停系統(tǒng)工作system(cls)用來清除屏幕2.6測試1建立產(chǎn)品信息:產(chǎn)品代碼產(chǎn)品名稱產(chǎn)品數(shù)量產(chǎn)品銷售量101沙發(fā)5622102椅子8948103餐桌4623104柜子3321105書桌1262查看全部產(chǎn)品信息:3查找產(chǎn)品信息:查找代碼為103的餐桌4修改產(chǎn)品信息:V品管理丟緬氏血少產(chǎn)品管理至統(tǒng)修改代碼:105名稱:書桌為:代碼: 205 名稱:書桌 產(chǎn)品數(shù)量: 23
13、 銷售量: 123 總結(jié)通過本次課程設(shè)計, 使得本學(xué)期來我學(xué)到的的知識得到了一次綜合的應(yīng)用。 實驗了從理 論到實踐的飛躍。本次課程設(shè)計中,我要用 C+知識設(shè)計的是一個簡單產(chǎn)品信息管理系統(tǒng)。要求用 C+莫 塊化設(shè)計的思想來完成程序的設(shè)計,并使用結(jié)構(gòu)數(shù)組和結(jié)構(gòu)指針,各個功能分別使用函數(shù) 來完成,主函數(shù)和各個函數(shù)分別存放在不同的 .cpp 文件中,要使用頭文件。在查看產(chǎn)品信 息時要求使用選擇法排序,折半查找法進(jìn)行查找。在輸入產(chǎn)品信息時,為解決產(chǎn)品代碼重復(fù)輸入的問題,通過與同學(xué)的交流,采用了通過 字符比較的方法排除。在查看產(chǎn)品信息時要求使用折半查找法進(jìn)行查找,在輸入錯誤代碼 時,總造成系統(tǒng)死機(jī),也是在
14、同學(xué)的幫助下找到了問題所在。這些都令我十分高興。在一系列的數(shù)據(jù)測試后,該程序能基本順利運(yùn)行,但不排除還存在一些問題。比如:在 輸入產(chǎn)品代碼時,如果輸入數(shù)據(jù)不為整數(shù)類型時,會造成程序錯誤??傊?,通過本次課程設(shè)計,是我使用 C+語言編程的綜合能力得到了提高。參考文獻(xiàn)1 王挺、周會平、賈麗麗、徐錫山 . C+ 程序設(shè)計 M. 北京:清華大學(xué)出版社, 2005:138-221.2 劉瑞新. Visual C+ 面向?qū)ο蟪绦蛟O(shè)計教程 M. 北京:機(jī)械工業(yè)出版社, 2005. 附錄 A 源代碼Main.cpp#include#include#includefunction.hint main()int n
15、;dodesktop();cinn;system(cls);if(n=1)input();else if(n=2) sort();else if(n=3)search();else if(n=4)reput(); while(n!=0); return 0;Function.h#include #include struct productint code;char name10; float amount;float sales;float stock;pro5;/產(chǎn)品輸入void input()for(int i=0;i5;i+)coutvv請輸入第i+1proi.code;cout 請輸
16、入第 i+1;cout 請輸入第 i+1proi.amount;cout 請輸入第 i+1proi.sales;proi.stock=proi.amount-proi.sales;system(cls);/產(chǎn)品庫存量升序排列 void sort()product temp;for(int i=0;i5-1;i+) for(int j=i+1;jproj.stock) temp=proi; proi=proj;proj=temp;for(int j=0;j=5-1;j+)proj.stockendl;cout 庫存量排第 j+1 種產(chǎn)品的庫存是cout 代碼是 proj.cod
17、eendl;cout 名稱是 endl;cout 數(shù)量是 proj.amountendl;cout 銷售量是 proj.salesendlendl; system(pause); system(cls);/ 產(chǎn)品代碼查找void search()int code5=1,2,3,4,5;bool flag=0;int b;coutb;for(int i=0;i5;+i)if(b=proi.code)flag=1;cout產(chǎn)品代碼 :proi.code 名稱:proi. name數(shù)量:proi.amou nt銷售量 :proi.salesendl;if(flag=0)cout此代碼不存在 !endl;system(pause); system(cls);/修改已輸入產(chǎn)品信息void reput()int code;cout 已輸入產(chǎn)品代碼分別是: endl;for(int k=0;k=5-1;k+) coutprok.codeendl;cout 您要修改的產(chǎn)品代碼是多少? code;for(int i=0;i=4;i+)if (proi.code=code) break;if(i=5)cout 沒有您要修改的產(chǎn)品 endl;elsecout 請輸入您要修改的產(chǎn)品的代碼 proi.code;cout 請輸入您要修改的產(chǎn)品的名字 ;cout 請輸入您
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高中化學(xué)新教材同步 必修第一冊 第3章 第2節(jié) 實驗活動2 鐵及其化合物的性質(zhì)
- 【四川卷】四川省德陽市高中2022級(2025屆)高三質(zhì)量監(jiān)測考試(二)(德陽二診)(2.21-2.23)英語試卷答案
- 傾廢航行數(shù)據(jù)記錄儀戰(zhàn)略市場規(guī)劃報告
- 鎳精礦戰(zhàn)略市場規(guī)劃報告
- 信鴿教練合同范本
- 加盟 轉(zhuǎn)讓合同范本
- 值守合同范本
- 中國學(xué)生發(fā)展核心素養(yǎng)心得體會
- 臺車出售合同范本
- 水利工程師水力學(xué)試題(附參考答案)
- 2025天津市安全員-B證考試題庫附答案
- 二年級下冊數(shù)學(xué)口算題-可打印
- 新風(fēng)施工合同
- 2025-2030年園藝修剪機(jī)器人行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報告
- 人教版四年級數(shù)學(xué)下冊第四單元測試卷(含答案)
- 2025年湖北省技能高考(建筑技術(shù)類)《建筑工程測量》模擬練習(xí)試題庫(含答案)
- 2023年中國綜合社會調(diào)查調(diào)查手冊
- 北師大版二年級數(shù)學(xué)下冊各單元測試卷
- 教科版 二年級下冊科學(xué)教學(xué)計劃
- DB32-T 2860-2015散裝液體化學(xué)品槽車裝卸安全作業(yè)規(guī)范-(高清現(xiàn)行)
- 福利院裝修改造工程施工組織設(shè)計(225頁)
評論
0/150
提交評論