




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
五、詳細(xì)設(shè)計(jì)1、功能函數(shù)f1() ——本函數(shù)由梁俊賢設(shè)計(jì)函數(shù)的功能:計(jì)算上個(gè)月每個(gè)人每種產(chǎn)品的銷售額函數(shù)的入口:從main()的switch()開關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為1時(shí)進(jìn)入該函數(shù),打開.dat數(shù)據(jù)文件,然后提示用戶通過鍵盤對(duì)該月的員工銷售情況進(jìn)行數(shù)據(jù)的讀入。函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無返回值的空值void函數(shù)。函數(shù)的出口:當(dāng)程序執(zhí)行提示語“printf("繼續(xù)輸入請(qǐng)按回車,結(jié)束輸入請(qǐng)按esc\n");”的時(shí)候,對(duì)用戶的操作進(jìn)行提示,如果用戶選擇了按“ESC”鍵,則用戶選擇了結(jié)束數(shù)據(jù)的錄入,將結(jié)束該函數(shù),而執(zhí)行主函數(shù)main()中“break;”跳出switch()開關(guān)函數(shù),繼續(xù)執(zhí)行for循環(huán)結(jié)構(gòu)。2功能函數(shù)f2()——本函數(shù)由馬家裕設(shè)計(jì)函數(shù)的功能:按銷售額對(duì)銷售員進(jìn)行排序,輸出排序結(jié)果。函數(shù)的入口:程序從main()的switch()開關(guān)結(jié)構(gòu)中進(jìn)入,即choise的值為2時(shí),開始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,首先用“fopen()”打開文件,然后利用“fread()”讀取二進(jìn)制數(shù)據(jù),最終利用選擇排序法,按銷售員的所選產(chǎn)品的總銷售額對(duì)銷售員進(jìn)行排序。函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無返回值的空值void函數(shù)。函數(shù)的出口:當(dāng)輸出排序結(jié)果用printf()標(biāo)準(zhǔn)輸出到屏幕上,然后結(jié)束該函數(shù),而執(zhí)行主函數(shù)main()中“break;”跳出switch()開關(guān)函數(shù),繼續(xù)執(zhí)行for循環(huán)結(jié)構(gòu)。功能函數(shù)f3()——本函數(shù)由阮饒杰設(shè)計(jì)函數(shù)的功能:統(tǒng)計(jì)每種產(chǎn)品的總銷售額,輸出排序結(jié)果函數(shù)的入口:從main()的switch()開關(guān)結(jié)構(gòu)中進(jìn)入,即choise的值為3的時(shí)侯,進(jìn)入該函數(shù),開始讀取數(shù)據(jù)對(duì)用戶進(jìn)行提示,然后統(tǒng)計(jì)每種產(chǎn)品的總銷售額。將計(jì)算后的總銷售額進(jìn)行排序,最終把排序的結(jié)果用printf()標(biāo)準(zhǔn)輸出函數(shù),將結(jié)果輸出在屏幕上。函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無返回值的空值void函數(shù)。函數(shù)的出口:當(dāng)輸出排序結(jié)果用printf()標(biāo)準(zhǔn)輸出到屏幕上,然后結(jié)束該函數(shù),而執(zhí)行主函數(shù)main()中“break;”跳出switch()開關(guān)函數(shù),繼續(xù)執(zhí)行for循環(huán)結(jié)構(gòu)。圖-寫入銷售數(shù)據(jù)界面功能函數(shù)f4()——本函數(shù)由梁卓榮設(shè)計(jì)函數(shù)的功能:輸出統(tǒng)計(jì)報(bào)表函數(shù)的入口:從main()的switch()開關(guān)結(jié)構(gòu)中進(jìn)入,即choise的值為3時(shí),進(jìn)入該函數(shù),然后通過fopen()函數(shù)。即:“if((fp=fopen(fname,"rb"))==NULL)”打開文件。進(jìn)入數(shù)據(jù)的處理。函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無返回值的空值void函數(shù)。函數(shù)的出口:開始時(shí)讀取數(shù)據(jù)后,統(tǒng)計(jì)報(bào)表已經(jīng)輸出到屏幕上時(shí),然后利用而執(zhí)行主函數(shù)main()中“break;”跳出switch()開關(guān)函數(shù),繼續(xù)執(zhí)行for循環(huán)結(jié)構(gòu)。5、功能函數(shù)主菜單menu() ——本函數(shù)由張群秀設(shè)計(jì)圖-主菜單界面函數(shù)的功能:主要作用是提示用戶操作,體現(xiàn)模塊化思想,主要是顯示出菜單讓用戶選擇要進(jìn)行的任務(wù)。函數(shù)的入口:從主函數(shù)main()中的system("cls");/*清屏命令*/menu();/*菜單函數(shù)提示用戶怎樣選擇*/進(jìn)入函數(shù),這是直接被主函數(shù)main()調(diào)用的。函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。并在文中無返回值的空值void函數(shù)。函數(shù)的出口:執(zhí)行完所有的printf()函數(shù)后自動(dòng)退出該函數(shù)。6、功能函數(shù)主函數(shù)——本函數(shù)由劉家海設(shè)計(jì)軟件進(jìn)入提示頁面函數(shù)的功能:用于聯(lián)系各個(gè)功能函數(shù)模塊,以及退出程序時(shí)的退出畫面提示。函數(shù)的入口:整個(gè)程序是從主函數(shù)開始的。函數(shù)的出口:當(dāng)從main()的switch()開關(guān)結(jié)構(gòu)中進(jìn)入,即choise的值為5時(shí)通過break;跳出for循環(huán),然后退出main()函數(shù),即:退出整個(gè)程序。函數(shù)調(diào)用關(guān)系:該函數(shù)不被其它函數(shù)調(diào)用六、調(diào)試與測試調(diào)試方法:打開MicrosoftVisualC++6.0,先將各個(gè)功能函數(shù)的的內(nèi)容清空,只保留主函數(shù)main(),然后編譯檢驗(yàn)main()函數(shù)中是否有錯(cuò),如果沒有錯(cuò)誤,再連接、運(yùn)行。確認(rèn)main()函數(shù)一切無誤后,然后加入功能函數(shù)menu()函數(shù)與f1()函數(shù),由于menu()函數(shù)比較簡單,所以與f1()函數(shù)一起進(jìn)行調(diào)試,f1()函數(shù)中主要注意讀取文件,與寫入文件,這都是二進(jìn)制的形式。若menu()函數(shù)與f1()函數(shù)編譯、連接、運(yùn)行沒問題,繼續(xù)加入f2()函數(shù),就這樣的方法依次檢查調(diào)試f3()函數(shù)、f4()函數(shù)。當(dāng)所有的功能函數(shù)都加上且正確無誤時(shí),就可以進(jìn)入下一個(gè)環(huán)節(jié)—程序的測試。測試方法:運(yùn)行程序,然后進(jìn)入銷售管理系統(tǒng)的界面,在這里需要做的就是把自己當(dāng)成一個(gè)公司的程序使用者,來對(duì)該程序進(jìn)行使用,看該程序有哪些方面用不著,把這些問題依次整理出來,再對(duì)源程序進(jìn)行修改,在這個(gè)過程中也需要對(duì)程序進(jìn)行調(diào)試,不過不必將各個(gè)功能函數(shù)的的內(nèi)容清空再進(jìn)行如上述的調(diào)試方法,而是,改一部份運(yùn)行一次,看是否有無。如f1()函數(shù)有誤,則先修改f1()函數(shù),一塊一塊的進(jìn)行修改,就是遵循C語言的模塊化設(shè)計(jì)原理,若所有的都改過來了,且運(yùn)行無誤,那就大功告成了。在調(diào)試中遇到的問題: 在調(diào)試過程中,我們遇到諸多小問題,但都在我們共同討論后解決了。1、問題:標(biāo)點(diǎn)符號(hào)在輸入的時(shí)候,使用的是中文輸入法,這種錯(cuò)誤一般都難以發(fā)現(xiàn),讓修改的時(shí)候找不到目標(biāo)。解決方法:用“替換”。如果程序中的error很多,不管error是什么,先將標(biāo)點(diǎn)替換成英文的標(biāo)點(diǎn)。2、問題:調(diào)試時(shí),有的時(shí)候編譯后沒什么問題,就是在點(diǎn)擊連接link時(shí)出現(xiàn)了錯(cuò)誤。而且,這種錯(cuò)誤讓我們不知道怎么修改。但是我們的程序的確正確。解決方法:將源程序保存,然后關(guān)掉MicrosoftVisualC++6.0,重新啟動(dòng)MicrosoftVisualC++6.0,七、分析及結(jié)論A、在設(shè)計(jì)中我們實(shí)現(xiàn)了設(shè)計(jì)目標(biāo)的所有內(nèi)容即:1、計(jì)算上個(gè)月每個(gè)人每種產(chǎn)品的銷售額。2、按銷售額對(duì)銷售員進(jìn)行排序,輸出排序結(jié)果(銷售員代號(hào))3、統(tǒng)計(jì)每種產(chǎn)品的總銷售額,對(duì)這些產(chǎn)品按從高到底的順序,輸出排序結(jié)果(需輸出產(chǎn)品的代號(hào)和銷售額)4、輸出統(tǒng)計(jì)報(bào)表5、顯示菜單B、其中遇到了以下問題:1、文件的創(chuàng)建方案及命名形式:文件應(yīng)在用戶計(jì)算數(shù)據(jù)時(shí)自動(dòng)創(chuàng)建;文件創(chuàng)建時(shí)的擴(kuò)展名.dat的添加困難。解決方案: 用strcat(fname,".dat");將擴(kuò)展名的.dat字符加到fname后面,令實(shí)現(xiàn)了文件的命名,如1月的數(shù)據(jù)文件,在使用者輸入1時(shí)就實(shí)現(xiàn)了文件.dat的創(chuàng)建。輸入出錯(cuò)的常見問題:輸入時(shí),scantf()函數(shù)中出現(xiàn)非地址項(xiàng),某變量未進(jìn)行類型定義,以及語句末尾缺少分號(hào)等常見的低等錯(cuò)誤。解決方案: 根據(jù)MicrosoftVisualC++6.0的錯(cuò)誤提示(error)與警告(warning)回到源程序中,逐一對(duì)錯(cuò)誤或警告進(jìn)行修改,每修改一條就編譯一次。C、實(shí)踐心得經(jīng)過C語言課程設(shè)計(jì)實(shí)踐學(xué)習(xí),使我們對(duì)c語言有了更進(jìn)一步的認(rèn)識(shí)和了解,通過實(shí)踐,我們也發(fā)現(xiàn)我們的好多不足之處,首先是在程序輸入上還不夠熟練,經(jīng)常按錯(cuò)字母,通過學(xué)習(xí)也有所改進(jìn);再有對(duì)c語言的一些標(biāo)準(zhǔn)庫函數(shù)不太了解,還有對(duì)函數(shù)調(diào)用的正確使用不夠熟悉,還有對(duì)c語言中經(jīng)常出現(xiàn)的錯(cuò)誤也不了解,通過實(shí)踐,使我們?cè)谶@幾個(gè)方面的認(rèn)識(shí)有所提高。比較熟練地掌握了C語言的基本知識(shí):數(shù)據(jù)類型(整形、實(shí)型、字符型、指針、數(shù)組、結(jié)構(gòu)等);運(yùn)算類型(算術(shù)運(yùn)算、邏輯運(yùn)算、自增自減運(yùn)算、賦值運(yùn)算等);程序結(jié)構(gòu)(順序結(jié)構(gòu)、判斷選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu));大程序的功能分解方法(即函
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 彩鋼板墻施工方案
- 膝部護(hù)理知識(shí)培訓(xùn)課件
- 關(guān)于按揭車合同范例
- 半包個(gè)人采購合同范例
- 廠房電力改造合同范例
- 公司財(cái)務(wù)部門的組織架構(gòu)協(xié)同調(diào)整計(jì)劃
- 隔離區(qū)的安全管理實(shí)踐計(jì)劃
- 與同事建立良好關(guān)系的練習(xí)計(jì)劃
- 財(cái)務(wù)預(yù)測的誤差分析與調(diào)整計(jì)劃
- 倉庫信息化建設(shè)計(jì)劃
- 床旁超聲引導(dǎo)血管穿刺的SOP
- 新編高等數(shù)學(xué)(理工類)第8版高職PPT全套教學(xué)課件
- (全)電梯安全風(fēng)險(xiǎn)管控清單
- 山東省高院量刑指導(dǎo)意見實(shí)施細(xì)則
- 教科版五年級(jí)科學(xué)下冊(cè)全套測試卷
- 環(huán)境規(guī)劃與管理第二章理論基礎(chǔ)
- TD-T 1040-2013 土地整治項(xiàng)目制圖規(guī)范
- 《數(shù)字影像設(shè)計(jì)與制作》統(tǒng)考復(fù)習(xí)題庫(匯總版)
- 成人有創(chuàng)機(jī)械通氣氣道內(nèi)吸引技術(shù)操作
- “雙減”下初中道德與法治分層作業(yè)設(shè)計(jì)研究 論文
- 發(fā)熱待查病例討論優(yōu)秀課件
評(píng)論
0/150
提交評(píng)論