C++程序設(shè)計(jì)專題實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第1頁(yè)
C++程序設(shè)計(jì)專題實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第2頁(yè)
C++程序設(shè)計(jì)專題實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第3頁(yè)
C++程序設(shè)計(jì)專題實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第4頁(yè)
C++程序設(shè)計(jì)專題實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

蘭州交通大學(xué)請(qǐng)正反打印請(qǐng)正反打印《C++程序設(shè)計(jì)專題試驗(yàn)》實(shí)驗(yàn)報(bào)告專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班級(jí)學(xué)號(hào)學(xué)生姓名完成日期指導(dǎo)教師成績(jī)

【排版說(shuō)明】(1)一級(jí)標(biāo)題用黑體三號(hào),加粗。(2)如有二級(jí)標(biāo)題,請(qǐng)使用黑體、四號(hào)、加粗。(3)正文漢字均用宋體小四號(hào),英文用TimesNewRoman字體。(4)正文行距提議設(shè)置為1.25倍行距。(5)程序源代碼部分提議使用五號(hào)、TimesNewRoman字體;(6)試驗(yàn)匯報(bào)中圖和表格式必須有編號(hào)和標(biāo)題,且圖表均要居中顯示,標(biāo)題字號(hào)宋體5號(hào),英文用TimesNewRoman5號(hào)字體圖表中字號(hào)大小適宜,顯示比較清楚。以下所表示(圖標(biāo)題在下方、表標(biāo)題在上方):圖1XXXXXXX圖表1XXXXXXX表數(shù)據(jù)1數(shù)據(jù)2數(shù)據(jù)3數(shù)據(jù)4數(shù)據(jù)5………【附加說(shuō)明】(1)試驗(yàn)匯報(bào)必須按照本模板標(biāo)題來(lái)寫,詳細(xì)內(nèi)容能夠依照自己設(shè)計(jì)情況如實(shí)填寫;(2)試驗(yàn)匯報(bào)內(nèi)容總體排版要求整齊美觀;(3)試驗(yàn)匯報(bào)按要求命名:學(xué)號(hào)_姓名_班級(jí).doc,比如:10301_張三_計(jì)算機(jī)1203班.doc;(4)最終提交電子版內(nèi)容為:試驗(yàn)匯報(bào)和能夠正確運(yùn)行完整源代碼,源代碼為壓縮文件(rar),命名規(guī)范和試驗(yàn)匯報(bào)命名一致;(5)最終提交紙質(zhì)版內(nèi)容為:試驗(yàn)匯報(bào)紙質(zhì)版,要求A4正反面打??;(6)整個(gè)試驗(yàn)內(nèi)容必須自己獨(dú)立完成,不得剽竊他人作業(yè),雷同作業(yè)均按0分記;(7)作業(yè)提交截止時(shí)間為6月20日,逾期按0分記。C++程序設(shè)計(jì)專題試驗(yàn)任務(wù)書(shū)本任務(wù)書(shū)用A4紙正反面打印本任務(wù)書(shū)用A4紙正反面打印所在系:計(jì)算機(jī)課程名稱:C++程序設(shè)計(jì)專題試驗(yàn)指導(dǎo)教師:蘭麗專業(yè)班級(jí):計(jì)算機(jī)1503班學(xué)生姓名:張忠?guī)泴W(xué)號(hào):11028實(shí)驗(yàn)?zāi)?.使學(xué)生深入了解繼承與派生基本概念;2.使學(xué)生了解并掌握單一繼承和多繼承原理;3.使學(xué)生掌握在不一樣繼承方式下基類組員訪問(wèn)控制。4.使學(xué)生了解結(jié)構(gòu)和派生使用。5.使學(xué)生了解并掌握多態(tài)性和虛函數(shù)使用。6.使學(xué)生了解數(shù)據(jù)共享和保護(hù)方法和意義。實(shí)驗(yàn)要求基本要求(1)此次專題試驗(yàn)共包含5個(gè)大型設(shè)計(jì)題目,其中必作題為必須完成題目,后面4個(gè)題目中最少選作一個(gè)。(2)分析題目要求,設(shè)計(jì)對(duì)應(yīng)類及對(duì)象;(3)設(shè)計(jì)算法操作對(duì)象;(4)對(duì)設(shè)計(jì)進(jìn)行編程、調(diào)試、修改;(5)針對(duì)題目要求,作對(duì)應(yīng)測(cè)試及結(jié)果分析。2.專題試驗(yàn)論文編寫要求:(1)按照論文統(tǒng)一規(guī)格撰寫打印匯報(bào);(2)論文包含目錄、正文、總結(jié)等;(3)裝訂按學(xué)校統(tǒng)一要求完成。必作題目:經(jīng)過(guò)組合和派生組成新類本設(shè)計(jì)題目標(biāo)任務(wù)是使用Point類產(chǎn)生Line類。分別經(jīng)過(guò)組合類及派生類兩種方法實(shí)現(xiàn),并要求分別給出使用類模板實(shí)現(xiàn)程序。本設(shè)計(jì)題目標(biāo)是使學(xué)生掌握在不一樣實(shí)現(xiàn)方法中,怎樣設(shè)計(jì)對(duì)應(yīng)結(jié)構(gòu)函數(shù)和拷貝結(jié)構(gòu)函數(shù),深入了解程序調(diào)用它們及析構(gòu)函數(shù)執(zhí)行次序,掌握組合類和派生類。另外本設(shè)計(jì)題目要讓學(xué)生深入掌握和了解類模板技術(shù)及其實(shí)現(xiàn)方法。題目詳細(xì)要求選作題目題目1:人員信息管理系統(tǒng)本設(shè)計(jì)題目標(biāo)任務(wù)是設(shè)計(jì)一個(gè)人員信息管理系統(tǒng),并使用虛函數(shù)實(shí)現(xiàn)多態(tài)性,完成顯示不一樣人員信息任務(wù)。設(shè)計(jì)employee類,用來(lái)存放雇員編號(hào),級(jí)別,月薪等信息,能夠?qū)ζ溥M(jìn)行操作和顯示。以employee為基類派生出technician類,表示兼職技術(shù)人員,以及manager類,表示經(jīng)理,以及salesman類,表示兼職推銷員。利用manage類和salesman類派生出salesmanager類,表示銷售經(jīng)理。注意使用虛基類。深入使用虛函數(shù)和抽象類改進(jìn)上面程序。本設(shè)計(jì)題目標(biāo)目標(biāo)是讓學(xué)生深入了解和掌握C++中類繼承,虛基類,多態(tài)性,虛函數(shù)以及抽象類技術(shù)及實(shí)現(xiàn)方法。題目2:成績(jī)管理系統(tǒng)輸入一個(gè)班級(jí)學(xué)生基本信息(包含學(xué)號(hào),姓名,性別,科目),對(duì)N門考試成績(jī)進(jìn)行管理(例N=5)要求用戶錄入每個(gè)學(xué)生每門課程分?jǐn)?shù);能夠計(jì)算每個(gè)學(xué)生各門功課總分和平均分,并按總分將成績(jī)排序,顯示每個(gè)學(xué)生總分和排名;計(jì)算全班各門功課平均分,顯示每門課程中低于平均分每一個(gè)學(xué)生學(xué)號(hào),姓名,性別,科目,成績(jī)等信息;顯示每門科目中,成績(jī)?cè)?0分以上學(xué)生信息。另外還輸出每門科目中不及格學(xué)生信息;能按姓名或者學(xué)號(hào)查找,增加,刪除和保留各個(gè)學(xué)生信息。題目3:高校教職員人事管理系統(tǒng)基本要求:(1)設(shè)計(jì)一個(gè)菜單將實(shí)現(xiàn)功效顯示出來(lái),并有選擇提醒(2)教師基本信息包含編號(hào)、職員分類(“行政人員”,“教師”,“通常員工”,“退休人員”,“返聘人員”,“暫時(shí)工”)、性別、年紀(jì),職務(wù)(“無(wú)”,“科級(jí)”,“處級(jí)”,“地級(jí)”);稱(“無(wú)”,“初級(jí)”,“中級(jí)”,“高級(jí)”);政治面貌(“群眾”,“中共黨員”,“民主黨派”)、學(xué)歷(“中?!?“大?!?“大學(xué)”,“碩士”,“博士”)(3)信息輸入輸出能夠重載輸入與輸出操作符(4)能夠?qū)崿F(xiàn)教職員信息增加、刪除、修改、查找。(5)能夠統(tǒng)計(jì)在職人員、中共黨員、女教職員、高職稱、高學(xué)歷人數(shù)。題目4:學(xué)生考勤管理系統(tǒng)問(wèn)題描述:在學(xué)生考勤管理系統(tǒng)中,考勤信息統(tǒng)計(jì)了學(xué)生缺課情況,它包含:缺課日期、第幾節(jié)課、課程名稱、學(xué)生姓名、缺課類型(遲到、早退、請(qǐng)假及曠課)。系統(tǒng)功效包含信息錄入、修改、查詢、統(tǒng)計(jì)等。功效要求:錄入學(xué)生缺課統(tǒng)計(jì);修改某個(gè)學(xué)生缺課統(tǒng)計(jì);查詢某個(gè)學(xué)生缺課情況;統(tǒng)計(jì)某段時(shí)間內(nèi),曠課學(xué)生姓名及曠課次數(shù),按曠課次數(shù)由多到少排序;統(tǒng)計(jì)某段時(shí)間內(nèi),有學(xué)生曠課課程及曠課人次,按曠課人次由多到少排序?!禖++程序設(shè)計(jì)專題試驗(yàn)》課程成績(jī)?cè)u(píng)定方法課程代碼:3241課程責(zé)任人:胡曉輝任課教師:蘭麗課時(shí):16學(xué)分:1考試方式:設(shè)計(jì)匯報(bào)一、成績(jī)組成及百分比1.總評(píng)成績(jī)總評(píng)成績(jī)=平時(shí)總成績(jī)(30%)+設(shè)計(jì)匯報(bào)成績(jī)×70%2.平時(shí)成績(jī)平時(shí)成績(jī)=考勤成績(jī)(占總評(píng)成績(jī)5%)+作業(yè)成績(jī)(占總評(píng)成績(jī)20%)+答疑成績(jī)(占總評(píng)成績(jī)5%)。二、各部分成績(jī)?cè)u(píng)定方法1.考勤成績(jī)考勤成績(jī)占總評(píng)成績(jī)5%,總分5分。曠課一次扣1分,事假、病假請(qǐng)假1次扣0.5分,早退1次扣1分,遲到不扣分。2.作業(yè)成績(jī)作業(yè)成績(jī)占總評(píng)成績(jī)20%。本課程共開(kāi)1周,每講課都需布置作業(yè),每2天收一次作業(yè),共計(jì)2次作業(yè)成績(jī),每次作業(yè)滿分100分,作業(yè)成績(jī)?yōu)楦鞔巫鳂I(yè)成績(jī)平均分。計(jì)分標(biāo)準(zhǔn)為:(1)作業(yè)完整,敘述清楚,內(nèi)容正確,書(shū)寫規(guī)范,得100分。(2)作業(yè)完整,敘述清楚,內(nèi)容基本正確,書(shū)寫規(guī)范,得80分。(3)作業(yè)完整,敘述較清楚,內(nèi)容基本正確,書(shū)寫較規(guī)范,得70分。(4)作業(yè)完整,敘述較清楚,內(nèi)容基本正確,書(shū)寫不規(guī)范,得60分。(5)作業(yè)欠完整,敘述較清楚,內(nèi)容基本正確,書(shū)寫規(guī)范,得50分。(6)作業(yè)不交或剽竊作業(yè)者為0分。(7)晚交、補(bǔ)交者每次先按照上面(1)~(6)評(píng)分,但最高不超出50分。注:若發(fā)覺(jué)有雷同作業(yè),包括全部當(dāng)事學(xué)生此次作業(yè)成績(jī)?nèi)?分記。若查實(shí)兩次均主動(dòng)剽竊他人作業(yè)現(xiàn)象,取消當(dāng)事學(xué)生期末考試資格。3.設(shè)計(jì)匯報(bào)成績(jī)?cè)O(shè)計(jì)匯報(bào)成績(jī)占總評(píng)成績(jī)70%。設(shè)計(jì)匯報(bào)成績(jī)=系統(tǒng)分析(占設(shè)計(jì)匯報(bào)成績(jī)25%)+設(shè)計(jì)算法編程(占設(shè)計(jì)匯報(bào)成績(jī)25%)+測(cè)試及結(jié)果分析(占設(shè)計(jì)匯報(bào)成績(jī)25%)+撰寫匯報(bào)(占設(shè)計(jì)匯報(bào)成績(jī)25%)系統(tǒng)分析計(jì)分標(biāo)準(zhǔn)為:(1)詳細(xì)分析了系統(tǒng)特點(diǎn),并給出選擇實(shí)現(xiàn)模型原因,得25分。(2)較詳細(xì)分析了系統(tǒng)特點(diǎn),給出了實(shí)現(xiàn)模型,得19分。(3)簡(jiǎn)明分析系統(tǒng)特點(diǎn),給出了實(shí)現(xiàn)模型,得13分。(4)未分析系統(tǒng)特點(diǎn),未給出實(shí)現(xiàn)模型,得6分。設(shè)計(jì)算法編程計(jì)分標(biāo)準(zhǔn)為:(1)設(shè)計(jì)了全部或以上功效算法且實(shí)現(xiàn),得25分。(2)設(shè)計(jì)了題目要求三分之二功效算法且實(shí)現(xiàn),得19分。(3)設(shè)計(jì)了題目要求三分之一功效算法且實(shí)現(xiàn),得13分。(4)設(shè)計(jì)了題目要求三分之一以下功效算法且實(shí)現(xiàn),得6分。測(cè)試及結(jié)果分析:(1)進(jìn)行了較詳細(xì)測(cè)試且各處結(jié)果分析,得25分。(2)簡(jiǎn)單測(cè)試且給出結(jié)果分析,得19分。(3)簡(jiǎn)單測(cè)試未給出結(jié)果分析,得13分。撰寫匯報(bào):(1)匯報(bào)格式規(guī)范,無(wú)排版錯(cuò)誤,得25分。(2)匯報(bào)格式規(guī)范,有個(gè)別字體、圖表格式不正確,得19分。(3)匯報(bào)格式基本規(guī)范,但部分字體、圖表命名格式不正確,得13分。(4)匯報(bào)格式完全不規(guī)范,字體、圖表命名格式不正確,得6分。注:若發(fā)覺(jué)有雷同,包括全部當(dāng)事學(xué)生成績(jī)?nèi)?分記。若查實(shí)為主動(dòng)剽竊他人現(xiàn)象,本課程為不及格。三、關(guān)于取消考試資格說(shuō)明1.缺課累計(jì)6課時(shí)及以上者取消考試資格。2.無(wú)故曠課4課時(shí)者取消考試資格。四、關(guān)于該課程成績(jī)?cè)u(píng)定方法執(zhí)行說(shuō)明1.嚴(yán)格按照學(xué)院審核經(jīng)過(guò)方法執(zhí)行,不得隨意改動(dòng)或變通。2.本方法開(kāi)學(xué)第一講課向全體學(xué)生宣告說(shuō)明。3.平時(shí)成績(jī)?cè)u(píng)定結(jié)果在期末考試前向全體同學(xué)公布,負(fù)責(zé)解釋、說(shuō)明和質(zhì)疑,確認(rèn)無(wú)誤后交學(xué)院教務(wù)辦公室立案。4.課程成績(jī)?cè)u(píng)定方法由學(xué)院審核經(jīng)過(guò)后,教務(wù)辦公室統(tǒng)一蓋章印發(fā)后執(zhí)行。課程責(zé)任人負(fù)責(zé)將成績(jī)?cè)u(píng)定方法發(fā)放到任課教師,并組織說(shuō)明和解釋相關(guān)細(xì)則,全部開(kāi)課教師評(píng)分要求和寬嚴(yán)程度要保持一致,以確保班級(jí)間平時(shí)成績(jī)公正性。5.課程名稱和課時(shí)相同課程期末考試采取同一套試題和補(bǔ)考試題,兩個(gè)以上開(kāi)課教師必須采取流水線方式批閱試卷,禁止單獨(dú)批閱。6.期末試題和補(bǔ)考試題由課程責(zé)任人組織任課教師集體研究出題,命題質(zhì)量實(shí)施審定制度,應(yīng)盡可能防止概念題、簡(jiǎn)答題、選擇題、填空題,杜絕教材及作業(yè)中原題。命題須經(jīng)教學(xué)院長(zhǎng)審定并于開(kāi)考前兩周交付印刷。7.開(kāi)卷、半開(kāi)卷考試,考生可攜帶教材、教輔等印刷資料及本人筆記本、作業(yè)本等進(jìn)入考場(chǎng),但不得借用或復(fù)印他人筆記本和作業(yè)本,不然按考試違紀(jì)處理??荚囘^(guò)程中不得相互討論、相互借用資料,不然按考試違紀(jì)或作弊處理。8.全部考試中使用各類復(fù)雜公式、圖表可按實(shí)際需要附于試卷末尾。9.教師禁止向?qū)W生提供歷屆考試題,禁止考試前勾畫重點(diǎn)和范圍,禁止泄露或變相泄露試題,并做好試題保密工作。課程責(zé)任人簽字:蘭麗年1月9日目錄1試驗(yàn)?zāi)繕?biāo)及要求 錯(cuò)誤!未定義書(shū)簽。2設(shè)計(jì)內(nèi)容 錯(cuò)誤!未定義書(shū)簽。2.1必作題 錯(cuò)誤!未定義書(shū)簽。2.1.1程序基本功效 錯(cuò)誤!未定義書(shū)簽。2.1.2程序設(shè)計(jì)方案和原理 錯(cuò)誤!未定義書(shū)簽。2.1.3程序代碼實(shí)現(xiàn) 錯(cuò)誤!未定義書(shū)簽。2.1.4程序運(yùn)行效果 122.2必作題 錯(cuò)誤!未定義書(shū)簽。2.2.1程序基本功效 錯(cuò)誤!未定義書(shū)簽。2.2.2程序設(shè)計(jì)方案和原理 錯(cuò)誤!未定義書(shū)簽。2.2.3程序代碼實(shí)現(xiàn) 錯(cuò)誤!未定義書(shū)簽。2.2.4程序運(yùn)行效果 錯(cuò)誤!未定義書(shū)簽。3試驗(yàn)總結(jié) 211試驗(yàn)?zāi)繕?biāo)及要求C++程序設(shè)計(jì)專題試驗(yàn)是計(jì)算機(jī)類專業(yè)集中實(shí)踐性步驟之一,是學(xué)習(xí)完《C++程序設(shè)計(jì)》課程后進(jìn)行一次全方面綜合練習(xí)。專題試驗(yàn)是課程教學(xué)中一項(xiàng)主要內(nèi)容,是完成教學(xué)計(jì)劃達(dá)成教學(xué)目標(biāo)主要步驟,是教學(xué)計(jì)劃中綜合性較強(qiáng)實(shí)踐教學(xué)步驟,它對(duì)幫助學(xué)生全方面牢靠地掌握課堂教學(xué)內(nèi)容、培養(yǎng)學(xué)生實(shí)踐和實(shí)際動(dòng)手能力、提升學(xué)生全方面素質(zhì)具備很主要意義。此次課程設(shè)計(jì)經(jīng)過(guò)設(shè)計(jì)和實(shí)現(xiàn)幾個(gè)應(yīng)用程序,達(dá)成以下目標(biāo):使學(xué)生能夠比較熟練地掌握C++語(yǔ)言基本語(yǔ)法規(guī)則;熟練掌握基本面向?qū)ο蟪绦蛟O(shè)計(jì)方法,如類實(shí)現(xiàn)、創(chuàng)建類實(shí)例—對(duì)象、實(shí)現(xiàn)類繼承等;掌握各種面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù),如繼承和派生,虛繼承、虛函數(shù)、抽象類、多態(tài)實(shí)現(xiàn)、運(yùn)算符重載、使用C++標(biāo)準(zhǔn)庫(kù)等。掌握在VC++平臺(tái)上進(jìn)行程序設(shè)計(jì)和調(diào)試方法。詳細(xì)要求包含:整個(gè)專題試驗(yàn)各個(gè)步驟學(xué)生自己動(dòng)手。前1個(gè)題目是C++基本知識(shí),每個(gè)學(xué)生都必須完成。后面題目可作為選做內(nèi)容。寫出對(duì)應(yīng)算法分析和源代碼。要求上機(jī)調(diào)試經(jīng)過(guò)。對(duì)課程設(shè)計(jì)進(jìn)行總結(jié),撰寫課程設(shè)計(jì)匯報(bào)。2設(shè)計(jì)內(nèi)容2.1必作題——組合類與派生類2.1.1程序基本功效該程序?qū)⒔?jīng)過(guò)組合類和派生類兩種不一樣方式來(lái)產(chǎn)生line類,求出line起始點(diǎn)、結(jié)束點(diǎn),而且求出line長(zhǎng)度。2.1.2程序設(shè)計(jì)方案和原理用類組合,使line類包含Point類兩個(gè)對(duì)象p1和p2,作為其數(shù)據(jù)組員。Line類具備計(jì)算線段長(zhǎng)度功效,在結(jié)構(gòu)函數(shù)中實(shí)現(xiàn)。派生類派生類組合類產(chǎn)產(chǎn)生生Line類Line類圖1結(jié)構(gòu)圖組合類源程序 #include<iostream>#include<cmath>usingnamespacestd;classPoint{//Point類定義public: Point(intxx,intyy):x(xx),y(yy){} intgetx(){returnx;}intgety(){returny;}private:intx; inty;};//類組合classLine{public: Line(Pointxp1,Pointxp2); doublegetlen(){returnlen;}private: doublelen; Pointp1; Pointp2;};//組合類結(jié)構(gòu)函數(shù)Line::Line(Pointxp1,Pointxp2):p1(xp1),p2(xp2){doublex=static_cast<double>(p1.getx()-p2.getx());doubley=static_cast<double>(p1.gety()-p2.gety());len=sqrt(x*x+y*y);}//主函數(shù)intmain(){intx1,y1,x2,y2;cout<<"請(qǐng)輸入第一個(gè)點(diǎn)坐標(biāo):";cin>>x1>>y1;cout<<"請(qǐng)輸入第二個(gè)點(diǎn)坐標(biāo):";cin>>x2>>y2;Pointp1(x1,y1),p2(x2,y2);Lineline(p1,p2);cout<<"Thelenghis:"<<line.getlen()<<endl;return0;}2.1.4程序運(yùn)行效果及結(jié)果分析圖2組合類運(yùn)行結(jié)果圖按照提醒在界面輸入兩個(gè)點(diǎn)坐標(biāo),運(yùn)行程序后就會(huì)得出line長(zhǎng)度。派生類源程序#include<iostream>#include<cmath>usingnamespacestd;classPoint{intx,y;public:Point(inta=0,intb=0){SetPoint(a,b);}voidSetPoint(inta,intb);//設(shè)置點(diǎn)坐標(biāo)值intGetX(){returnx;}intGetY(){returny;}voidshowPoint();//顯示點(diǎn)坐標(biāo)值};voidPoint::SetPoint(inta,intb){x=a;y=b;}voidPoint::showPoint(){}classLine:publicPoint{public:Line(inta,intb,intc,intd):Point(a,b){EndPoint.SetPoint(c,d);}doubleLength(){doublep=(double)(EndPoint.GetX()-GetX());doubleq=(double)((EndPoint.GetY()-GetY()));returnsqrt(p*p+q*q);}voidlength(){cout<<"開(kāi)始點(diǎn):["<<GetX()<<','<<GetY()<<']'<<endl;cout<<"結(jié)束點(diǎn):["<<EndPoint.GetX()<<','<<EndPoint.GetY()<<']'<<endl;}private:PointEndPoint;};intmain(){intx1,y1,x2,y2;cout<<"請(qǐng)輸入開(kāi)始點(diǎn)坐標(biāo):";cin>>x1>>y1;cout<<"請(qǐng)輸入結(jié)束點(diǎn)坐標(biāo):";cin>>x2>>y2;Lineline(x1,y1,x2,y2);cout<<"兩個(gè)點(diǎn)分別為:"<<endl;line.length();cout<<"line長(zhǎng)度:";cout<<line.Length()<<endl;return0;}程序運(yùn)行效果及結(jié)果分析圖3派生類運(yùn)行結(jié)果圖結(jié)果分析按照提醒輸入兩個(gè)點(diǎn)坐標(biāo)后;運(yùn)行程序,將在界面上顯示出兩個(gè)點(diǎn)以及兩個(gè)點(diǎn)之間距離。經(jīng)過(guò)派生方法能夠很簡(jiǎn)單求出兩個(gè)點(diǎn)之間距離。2.2必做題——學(xué)生考勤管理系統(tǒng)2.2.1程序基本功效該程序經(jīng)過(guò)結(jié)構(gòu)體設(shè)置了學(xué)生基本信息,有學(xué)生姓名,科目,日期,第一節(jié)課和缺課類型,整個(gè)函數(shù)又分為四個(gè)部分,第一部分為學(xué)生信息錄入,以文件形式將學(xué)生信息存放,為了后面使用;第二部分為學(xué)生信息查詢,輸入你要查詢學(xué)生姓名,學(xué)生信息就全部顯示出來(lái);第三部分為學(xué)生信息修改,該功效實(shí)現(xiàn)先是找出你要修改信息學(xué)生,然后進(jìn)行修改之后,繼續(xù)存放到文件之中,為后面使用。第四部分為學(xué)生曠課次數(shù)統(tǒng)計(jì),也是經(jīng)過(guò)查詢,找出符合條件信息,進(jìn)而統(tǒng)計(jì)出愈加直觀信息,方便于閱讀。2.2.2設(shè)計(jì)方式幾原理學(xué)生考勤管理系統(tǒng)學(xué)生考勤管理系統(tǒng)信息統(tǒng)計(jì)信息統(tǒng)計(jì)信息修改信息查詢信息錄入圖4管理系統(tǒng)結(jié)構(gòu)圖2.2.3程序源代碼實(shí)現(xiàn)#include<iostream>#include<string>#defineSIZE5usingnamespacestd;structattence{charname[10]; charproject[10]; chardate[10]; chartime[10]; chartype[10]; }att[SIZE];voidmenu(){cout<<"******************學(xué)生考勤管理系統(tǒng)************"<<endl;cout<<"1.信息錄入"<<endl;cout<<"2.信息查詢"<<endl;cout<<"3.信息修改"<<endl;cout<<"4.信息統(tǒng)計(jì)"<<endl;cout<<"5.退出系統(tǒng)"<<endl;cout<<"**********************************************"<<endl;}//建立文件來(lái)存放錄入信息voidsave(){FILE*fp;inti;if((fp=fopen("att.dat","wb+"))==NULL){printf("不能打開(kāi)此文件\n");return;}for(i=0;i<SIZE;i++)if(fwrite(&att[i],sizeof(structattence),1,fp)!=1)printf("filewriteerror\n");fclose(fp);}voidreadate(){FILE*fp;if((fp=fopen("att.dat","wb+"))==NULL){printf("不能打開(kāi)此文件\n");return;}fclose(fp);}//考勤系統(tǒng)學(xué)生信息錄入功效voidinput(){inti;cout<<"請(qǐng)按以下次序輸入信息"<<endl;cout<<"姓名"<<"科目"<<"日期"<<"第幾節(jié)課"<<"類型"<<endl;for(i=0;i<SIZE;i++){ cin>>att[i].name>>att[i].project>>att[i].date>>att[i].time>>att[i].type;save();}menu();}voidoutput(){inti;readate();for(i=0;i<SIZE;i++){if(!i)cout<<"姓名"<<"科目"<<"日期"<<"第幾節(jié)課"<<"類型"<<endl;cout<<att[i].name<<'\t'<<att[i].project<<'\t'<<att[i].date<<'\t'<<att[i].time<<'\t'<<att[i].type<<'\t'<<endl;}menu();}//修改功效voidxiugai(){ FILE*fp; inti; charname[10]; charproject[10]; chardate[10]; chartime[10]; chartype[10]; charstr[10]; charstr1[10]; readate(); cout<<"請(qǐng)輸入要修改學(xué)生姓名和缺課科目:"<<endl; cout<<"姓名"<<"科目"<<endl; cin>>str>>str1;cout<<"請(qǐng)按以下次序輸入修改后信息"<<endl;cout<<"姓名"<<"科目"<<"日期"<<"第幾節(jié)課"<<"缺課類型"<<endl; cin>>name>>project>>date>>time>>type;for(i=0;i<SIZE;i++) if(strcmp(att[i].name,str)&&strcmp(att[i].project,str1)==0) { strcpy(att[i].name,name); strcpy(att[i].project,project); strcpy(att[i].date,date); strcpy(att[i].time,time);strcpy(att[i].type,type); cout<<i<<endl;}if((fp=fopen("att.dat","wb+"))==NULL){cout<<"不能打開(kāi)此文件"<<endl;}for(i=0;i<SIZE;i++)if(fwrite(&att[i],sizeof(structattence),1,fp)!=1) { cout<<"寫入文件錯(cuò)誤"<<endl;fclose(fp);exit(0); } fclose(fp);cout<<"修改成功"<<endl;menu();}//統(tǒng)計(jì)考勤情況voidsave1(){FILE*fp;inti;if((fp=fopen("att.dat","wb+"))==NULL){printf("不能打開(kāi)此文件\n");return;}for(i=0;i<SIZE;i++)if(fwrite(&att[i],sizeof(structattence),1,fp)!=1)printf("filewriteerror\n");fclose(fp);}voidreadate1(){FILE*fp;if((fp=fopen("att.dat","wb+"))==NULL){

溫馨提示

  • 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. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論