九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

《C++程序設(shè)計(jì)》課程設(shè)計(jì)說(shuō)明書(shū)比賽參賽選手管理系統(tǒng)

上傳人:仙*** 文檔編號(hào):28316243 上傳時(shí)間:2021-08-25 格式:DOC 頁(yè)數(shù):22 大?。?37.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
《C++程序設(shè)計(jì)》課程設(shè)計(jì)說(shuō)明書(shū)比賽參賽選手管理系統(tǒng)_第1頁(yè)
第1頁(yè) / 共22頁(yè)
《C++程序設(shè)計(jì)》課程設(shè)計(jì)說(shuō)明書(shū)比賽參賽選手管理系統(tǒng)_第2頁(yè)
第2頁(yè) / 共22頁(yè)
《C++程序設(shè)計(jì)》課程設(shè)計(jì)說(shuō)明書(shū)比賽參賽選手管理系統(tǒng)_第3頁(yè)
第3頁(yè) / 共22頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《《C++程序設(shè)計(jì)》課程設(shè)計(jì)說(shuō)明書(shū)比賽參賽選手管理系統(tǒng)》由會(huì)員分享,可在線閱讀,更多相關(guān)《《C++程序設(shè)計(jì)》課程設(shè)計(jì)說(shuō)明書(shū)比賽參賽選手管理系統(tǒng)(22頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、內(nèi)蒙古科技大學(xué)C+課程設(shè)計(jì)說(shuō)明書(shū) C+程序設(shè)計(jì)課程設(shè)計(jì)說(shuō)明書(shū)題 目:比賽參賽選手管理系統(tǒng) 學(xué)生姓名: 學(xué) 號(hào): 專 業(yè):電子信息工程 班 級(jí):信息092 指導(dǎo)老師: 內(nèi)蒙古科技大學(xué)課程設(shè)計(jì)任務(wù)書(shū)課程名稱C+語(yǔ)言課程設(shè)計(jì)設(shè)計(jì)題目比賽參賽選手管理系統(tǒng)指導(dǎo)教師時(shí)間2011.6.132011.6.24一、教學(xué)要求1. 鞏固和加深學(xué)生對(duì)C+語(yǔ)言課程的基本知識(shí)的理解和掌握2. 掌握C+語(yǔ)言編程和程序調(diào)試的基本技能3. 利用C+語(yǔ)言進(jìn)行基本的軟件設(shè)計(jì)4. 掌握書(shū)寫(xiě)程序設(shè)計(jì)說(shuō)明文檔的能力5. 提高運(yùn)用C+語(yǔ)言解決實(shí)際問(wèn)題的能力二、設(shè)計(jì)資料及參數(shù)每個(gè)學(xué)生在教師提供的課程設(shè)計(jì)題目中任意選擇一題,獨(dú)立完成,可根據(jù)設(shè)

2、計(jì)內(nèi)容適當(dāng)修改題目名稱。*比賽參賽選手管理系統(tǒng)定義人員基類,包含選手的基本數(shù)據(jù)和基本屬性;要求至少設(shè)計(jì)以下各功能模塊:v 輸入記錄v 查詢功能v 排序v 顯示信息三、設(shè)計(jì)要求及成果1. 分析課程設(shè)計(jì)題目的要求2. 寫(xiě)出詳細(xì)設(shè)計(jì)說(shuō)明3. 編寫(xiě)程序代碼,調(diào)試程序使其能正確運(yùn)行4. 設(shè)計(jì)完成的軟件要便于操作和使用4. 設(shè)計(jì)完成后提交課程設(shè)計(jì)報(bào)告四、進(jìn)度安排資料查閱與討論(1天)系統(tǒng)分析(2天)系統(tǒng)的開(kāi)發(fā)與測(cè)試(5天)編寫(xiě)課程設(shè)計(jì)說(shuō)明書(shū)和驗(yàn)收(2天)五、評(píng)分標(biāo)準(zhǔn)1. 根據(jù)平時(shí)上機(jī)考勤、表現(xiàn)和進(jìn)度,教師將每天點(diǎn)名和檢查2. 根據(jù)課程設(shè)計(jì)完成情況,必須有可運(yùn)行的軟件。3. 根據(jù)課程設(shè)計(jì)報(bào)告的質(zhì)量,如有雷同

3、,則所有雷同的所有人均判為不及格。六、建議參考資料1C+面向?qū)ο蟪绦蛟O(shè)計(jì),吳敏、楊國(guó)林 主編,內(nèi)蒙古大學(xué)出版社2C+語(yǔ)言程序設(shè)計(jì)(第三版),鄭莉,清華大學(xué)出版社比賽參賽選手管理系統(tǒng)摘要C+語(yǔ)言是目前公認(rèn)的熱門(mén)編程語(yǔ)言之一。C+是在C語(yǔ)言基礎(chǔ)上發(fā)展演變而來(lái)的一種面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言。它既支持面向過(guò)程的程序設(shè)計(jì)方法,也支持面向?qū)ο蟮某绦蛟O(shè)計(jì)方法。當(dāng)今,C+語(yǔ)言在社會(huì)的各個(gè)領(lǐng)域發(fā)揮著越來(lái)越重要的作用。參賽選手系統(tǒng)的設(shè)計(jì)正是C+用于生活中的一項(xiàng)應(yīng)用。參賽選手管理系統(tǒng)能方便用戶快捷處理選手的信息,得到想要的數(shù)據(jù)并能將選手的信息以文檔方式保存。此系統(tǒng)的主要管理的信息有:選手的姓名,編號(hào)和三項(xiàng)賽事的成績(jī)。系

4、統(tǒng)的主要功能有選手信息的添加、修改、顯示,能對(duì)選手成績(jī)按編號(hào)或成績(jī)進(jìn)行排序,可以根據(jù)用戶的要求按姓名,編號(hào)查詢選手的信息,保存信息到文件以及從文件中讀取信息等功能。目錄摘要2第一章 問(wèn)題描述2第二章 問(wèn)題分析2第三章 數(shù)據(jù)模型2第四章 設(shè)計(jì)流程圖2第五章 程序代碼2第六章 運(yùn)行結(jié)果2第七章 設(shè)計(jì)總結(jié)2參考文獻(xiàn)2第一章 問(wèn)題描述建立一套比賽參賽選手管理系統(tǒng)。定義人員基類(competitor),包含選手的基本數(shù)據(jù)和基本屬性,實(shí)現(xiàn)以下各功能:v 輸入記錄:選手信息數(shù)據(jù)要以文件的形式保存,能實(shí)現(xiàn)選手信息數(shù)據(jù)的維護(hù)。此模塊包括子模塊有:增加選手信息、修改選手信息。v 查詢功能:查詢時(shí)可實(shí)現(xiàn)按姓名查詢、

5、按編號(hào)查詢、成績(jī)查詢v 排序:能對(duì)用戶指定的任意項(xiàng)目名,按成績(jī)由低到高排列選手?jǐn)?shù)據(jù)并顯示排序結(jié)果。v顯示信息:顯示選手的編號(hào)、項(xiàng)目、成績(jī)等信息。設(shè)計(jì)要求及成果1. 分析課程設(shè)計(jì)題目的要求2. 寫(xiě)出詳細(xì)設(shè)計(jì)說(shuō)明3. 編寫(xiě)程序代碼,調(diào)試程序使其能正確運(yùn)行4. 設(shè)計(jì)完成的軟件要便于操作和使用第二章 問(wèn)題分析方案說(shuō)明:參賽選手管理系統(tǒng)是用面向?qū)ο蟮姆椒ㄔO(shè)計(jì),由于數(shù)組的存放是連續(xù)的,而單鏈表是非連續(xù)存放的,是動(dòng)態(tài)分配內(nèi)存空間,因此此系統(tǒng)采用單鏈表來(lái)完成。各個(gè)功能模塊的實(shí)現(xiàn)主要轉(zhuǎn)變到對(duì)單鏈表的遍歷,添加和刪除結(jié)點(diǎn)。系統(tǒng)功能模塊的劃分:在主界面中包括“增加選手 修改選手 查詢選手信息 排序 保存信息 讀取信

6、息 退出”等全部的功能,之所以設(shè)計(jì)這么一個(gè)主界面,一是因?yàn)槟苁褂脩魧?duì)程序操作的流程更加清楚簡(jiǎn)明,二是保證了用戶同時(shí)只能對(duì)一個(gè)文件進(jìn)行操作的系統(tǒng)要求,保證了系統(tǒng)不會(huì)發(fā)生打開(kāi)文件紊亂或者出現(xiàn)致命錯(cuò)誤。功能模板的劃分顯示菜單功能模板1增加選手功能2修改選手功能3查詢選手信息4排序功能5保存信息6讀取信息7退出第三章 數(shù)據(jù)模型類的設(shè)計(jì)定義參賽選手competitor類,包含成員變量:姓名name,編號(hào)num,短跑、跳高、跳遠(yuǎn)成績(jī)x,y,z。class competitor /選手public: competitor *next; public: string name; /姓名 long num; /

7、編號(hào) int x,y,z; /短跑,跳高,跳遠(yuǎn) 成員函數(shù):void sadd(); /添加void samend(); /修改void ssearch(); /查詢void staxis(); /排序void ssave(); /保存void sload(); /讀取void pxh();void psx();void pyw();void pyy();第四章 設(shè)計(jì)流程圖開(kāi)始讀入文件中的數(shù)據(jù)并輸出菜單及提示信息輸入選擇選擇操作子程序保存并退出 圖4.1 流程圖 第五章 程序代碼#include #include #include #include using namespace std; cl

8、ass competitor public: competitor *next; public: string name; /姓名 long num; /編號(hào) float x,y,z; /短跑,跳高,跳遠(yuǎn) void play()coutname選手的編號(hào)是num,短跑:x,跳高:y,跳遠(yuǎn):z next; delete comp; comp=p; comp=0; void sadd(); /添加 void samend(); /修改 void ssearch(); /查詢 void staxis(); /排序 void ssave(); /保存 void sload(); /讀取 void px

9、h(); void psx(); void pyw(); void pyy(); private: competitor *comp; /頭接點(diǎn) ; void cla:sadd() /添加 competitor *q; string name1; long num1; float x1,y1,z1; system(cls); coutn *增加的選手* nendl; cout請(qǐng)輸入選手的(中間用空格間隔) endl; cout姓名 編號(hào) 短跑成績(jī) 跳高成績(jī) 跳遠(yuǎn)成績(jī)name1num1x1y1z1; q=new competitor(name1,num1,x1,y1,z1); q-next=0;

10、 if(comp) competitor *t; t=comp; if(t-num=num1) cout編號(hào)已存在,請(qǐng)重新輸入next) if(t-num=num1) cout編號(hào)已存在,請(qǐng)重新輸入next; t-next=q; else comp=q; cout輸入完畢endl; void cla:samend() /修改 system(cls); long num1; coutn* 修改選手信息 *n; coutnum1; /查找要修改的結(jié)點(diǎn) competitor *p1,*p2; p1=comp; while(p1) if(p1-num=num1) break; else p2=p1;

11、p1=p1-next; if(p1!=NULL) cout編號(hào)是num1的選手的信息:endl; cout姓名 name 短跑x 跳高y 跳遠(yuǎn)zendl; cout請(qǐng)輸入修改后的信息:姓名 短跑成績(jī) 跳高 ;cout成績(jī) 跳遠(yuǎn)成績(jī)p1-namep1-xp1-yp1-z; cout修改成功endl; else /未找到接點(diǎn) cout未找到!n; void cla:ssearch() /查詢 system(cls); coutn* 查詢選手信息 *nendl; cout請(qǐng)輸入查詢方式:endl; cout1.按編號(hào)查詢endl; cout2.按姓名查詢endl; cout3.返回c; switch

12、 (c) case 1: long num1; cout要查詢的編號(hào)num1; /查找要查詢的結(jié)點(diǎn) competitor *p1,*p2; p1=comp; while(p1) if(p1-num=num1) break; else p2=p1; p1=p1-next; if(p1!=NULL) cout編號(hào)是num1的選手的信息endl; cout姓名:name 短跑:x 跳高:y 跳遠(yuǎn):zendl; cout查詢完畢.; else /未找到接點(diǎn) cout未找到!n; break; case 2: string name1; cout要查詢的選手姓名name1; /查找要查詢的結(jié)點(diǎn) comp

13、etitor *p1,*p2; p1=comp; while(p1) if(p1-name=name1) break; else p2=p1; p1=p1-next; if(p1!=NULL) coutname1的選手的信息endl; cout編號(hào):num 短跑:x C+:y 跳遠(yuǎn):zendl; cout查詢完畢.; else /未找到接點(diǎn) coutnext) n+; p1=p1-next; cout共有n條信息.endl; int i; p1=comp; for(i=1;inump1-next-num) / 如果頭結(jié)點(diǎn)大于第二個(gè)的 p2=p1-next; p1-next=p1-next-ne

14、xt; p2-next=p1; /頭結(jié)點(diǎn)交換 comp=p2; p1=comp; while(p1-next-next) /中間的交換 p2=p1; p1=p1-next; if(p1-nump1-next-num) p2-next=p1-next; p1-next=p1-next-next; p2-next-next=p1; p1=p2-next; /交換 p1=comp; do p1-play(); p1=p1-next; while(p1); void cla:psx() /按短跑成績(jī)排序 competitor *p1,*p2; int n; p1=comp; n=1; while(p1

15、-next) n+; p1=p1-next; cout共有n條信息.endl; int i; p1=comp; for(i=1;ixp1-next-x) / 如果頭結(jié)點(diǎn)大于第二個(gè)的 p2=p1-next; p1-next=p1-next-next; p2-next=p1; /頭結(jié)點(diǎn)交換 comp=p2; p1=comp; while(p1-next-next) /中間的交換 p2=p1; p1=p1-next; if(p1-xp1-next-x) p2-next=p1-next; p1-next=p1-next-next; p2-next-next=p1; p1=p2-next; /交換 p1

16、=comp; do p1-play(); p1=p1-next; while(p1); void cla:pyw() /按跳高成績(jī)排序 competitor *p1,*p2; int n; p1=comp; n=1; while(p1-next) n+; p1=p1-next; cout共有n條信息.endl; int i; p1=comp; for(i=1;iyp1-next-y) /如果頭結(jié)點(diǎn)大于第二個(gè)的 p2=p1-next; p1-next=p1-next-next; p2-next=p1; /頭結(jié)點(diǎn)交換 comp=p2; p1=comp; while(p1-next-next) /中

17、間的交換 p2=p1; p1=p1-next; if(p1-yp1-next-y) p2-next=p1-next; p1-next=p1-next-next; p2-next-next=p1; p1=p2-next; /交換 p1=comp; do p1-play(); p1=p1-next; while(p1); void cla:pyy() /按跳遠(yuǎn)成績(jī)排序 competitor *p1,*p2; int n; p1=comp; n=1; while(p1-next) n+; p1=p1-next; cout共有n條信息.endl; int i; p1=comp; for(i=1;izp

18、1-next-z) / 如果頭結(jié)點(diǎn)大于第二個(gè)的 p2=p1-next; p1-next=p1-next-next; p2-next=p1; /頭結(jié)點(diǎn)交換 comp=p2; p1=comp; while(p1-next-next) /中間的交換 p2=p1; p1=p1-next; if(p1-zp1-next-z) p2-next=p1-next; p1-next=p1-next-next; p2-next-next=p1; p1=p2-next; /交換 p1=comp; do p1-play(); p1=p1-next; while(p1); void cla:staxis() /排序 s

19、ystem(cls); char c; cout請(qǐng)選擇以何種方式排序:endl; cout1以編號(hào)排序endl; cout2以短跑成績(jī)排序endl; cout3以跳高成績(jī)排序endl; cout4以跳遠(yuǎn)成績(jī)排序endl; cout5返回endl; cout請(qǐng)選擇(1-5)c; switch (c) case 1:pxh(); break; case 2:psx(); break; case 3:pyw(); break; case 4:pyy(); break; case 5:return; void cla:ssave() /保存到文件 system(cls); char c; coutc;

20、 if(toupper(c)!=Y) return; ofstream tfile(date.txt,ios_base:binary); competitor *p=comp; while(p) / 寫(xiě)入文件 tfilenametnumtxtytz; tfilenext; tfile.close(); cout保存完畢.next; delete p; p=comp; If stream tfile(date.txt,ios_base:binary); string name1; long num1; float x1,y1,z1; tfilename1num1x1y1z1; while(tfi

21、le.good() /創(chuàng)建選手接點(diǎn) competitor *s; s=comp; s=new competitor(name1,num1,x1,y1,z1); s-next=0; if(comp) /若已經(jīng)存在結(jié)點(diǎn) competitor *p2; p2=comp;while(p2-next) /查找尾結(jié)點(diǎn) p2=p2-next; p2-next=s; /連接 else /若不存在結(jié)點(diǎn)(表空) comp=s; /連接 tfilename1num1x1y1z1; tfile.close(); coutn歡迎使用選手成績(jī)管理系統(tǒng)n; void main() char c; cla a; do cou

22、t*n; cout 1增加選手 n; cout 2修改選手 n; cout 3查詢選手信息 n; cout 4排序 n; cout 5保存信息 n; cout 6讀取信息 n; cout 7退出 n; cout*n; coutc; switch(c) case 1: a.sadd();break; case 2: a.samend();break; case 3: a.ssearch();break; case 4: a.staxis();break; case 5: a.ssave();break; case 6: a.sload();break; while(c!=7); 第六章 運(yùn)行結(jié)果

23、圖6.1 運(yùn)行結(jié)果主界面第七章 設(shè)計(jì)總結(jié)通過(guò)一個(gè)學(xué)期的C+學(xué)習(xí),我對(duì)C+語(yǔ)言有了基本認(rèn)識(shí),但是對(duì)有些知識(shí)懂得還不夠透徹。通過(guò)這次為期兩周的課程設(shè)計(jì),我學(xué)到了更多關(guān)于C+面向?qū)ο蟮某绦蛟O(shè)計(jì)的內(nèi)容。這個(gè)課題用到了C+語(yǔ)言程序設(shè)計(jì)的知識(shí),通過(guò)這次課程設(shè)計(jì),使我對(duì)C+設(shè)計(jì)有了更深的了解,對(duì)課本上的知識(shí)有了進(jìn)一步的掌握,同時(shí)也使我對(duì)自己的專業(yè)知識(shí)有進(jìn)一步的鞏固加深。在寫(xiě)程序時(shí),要注意類與對(duì)象、構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員函數(shù)等相結(jié)合,尤其是在學(xué)好程序后,要運(yùn)行,有不足之處及時(shí)完善。把理論知識(shí)與實(shí)踐相結(jié)合,才能將所學(xué)知識(shí)運(yùn)用的恰到好處。參考文獻(xiàn)1吳敏,楊國(guó)林. C+面向?qū)ο蟪绦蛟O(shè)計(jì)M.呼和浩特:內(nèi)蒙古大學(xué)出版社.2006.2鄭莉.C+語(yǔ)言程序設(shè)計(jì)M. 北京:清華大學(xué)出版社.2003.3劉開(kāi)軍.C+程序設(shè)計(jì)M.北京:清華大學(xué)出版社.2004.21

展開(kāi)閱讀全文
溫馨提示:
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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!