vc人員管理系統(tǒng)完整設計報告_第1頁
vc人員管理系統(tǒng)完整設計報告_第2頁
vc人員管理系統(tǒng)完整設計報告_第3頁
vc人員管理系統(tǒng)完整設計報告_第4頁
vc人員管理系統(tǒng)完整設計報告_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、PAGE 江 蘇師師范大學科文學院本科生課課程設計課 程 名 稱稱:Viisuaal CC+ 題 目:人員管管理系統(tǒng)統(tǒng)專 業(yè) 班 級級: 111電信11 學 生 姓 名名:劉海海騰學 生 學 號號:111832261221 日 期: 220133.122.28指 導 教 師師:姜芳芳艽科文學院院教務部部印制一、課程程設計目目的、任任務和內(nèi)內(nèi)容要求求:計算機機語言程程序設計計是一一門以編編程實踐踐為主的的專業(yè)課課,目的的在于培培養(yǎng)學生生利用計計算機語語言進行行軟件開開發(fā)所必必需的基基本思想想和基本本技能,進進一步提提高綜合合應用計計算機語語言的各各種編程程知識和和技巧進進行程序序設計的的能力,通

2、通過本次次課程設設計,學學生應能能達到具具備設計計功能較較為復雜雜的應用用程序的的能力,同同時培養(yǎng)養(yǎng)學生自自主學習習和獨立立創(chuàng)新的的精神。任務如下下: 11進行行需求分分析和概概要設計計,給出出流程圖圖。 22寫出出詳細設設計,熟熟悉其中中采用的的關(guān)鍵技技術(shù)。3給出出具體的的編碼實實現(xiàn)并調(diào)調(diào)試。4寫課課程設計計報告提提交源程程序。內(nèi)容要求求:設計并完完成軟件件系統(tǒng)。要求:1應具具有簡潔潔友好的的用戶界界面。2要求求軟件系系統(tǒng)的功功能完整整。3要求求程序具備備正確性性,可讀讀性和運運行的高高效性。二、進度度安排:第133天: 查找資資料,進進行需求求分析和和概要設設計;第466天: 各模模塊的詳

3、詳細設計計;第7112天: 軟件件實現(xiàn)與與調(diào)試;第1314天天:寫課課程設計計報告并并提交源源程序。三、主要要參考文文獻:1 四維科科技,丁丁展,湯湯倩.VVisuual C+ 游戲戲開發(fā)技技術(shù)與實實例MM.北北京:人人民郵電電出版社社,200052求求是科技技,張宏宏林.VVisuual C+ 6.0程序序設計與與開發(fā)技技術(shù)大全全M. 北北京:人人民郵電電出版社社,200053汪汪翔,袁袁輝.VVisuual C+ 實踐踐與提高高(網(wǎng)絡絡編程篇篇)MM. 北京:中國鐵鐵道出版版社,2200114黃黃維通.Vissuall C+ 面面向?qū)ο笙笈c可視視化程序序設計M. 北京京:清華華大學出出版社

4、,200035謝謝希任.計算機機網(wǎng)絡(第第4版)M. 北京京:電子子工業(yè)出出版社,200056(美)WW. RRichhardd Stteveens. TCCP/IIP詳解解卷1:協(xié)議M. 北京京:機械械工業(yè)出出版社,200057北北京現(xiàn)代代富博科科技有限限公司,陳兵旗旗,孫明明. 北北京:VVisuual C+實用圖圖象處理理專業(yè)教教程MM .清華大大學出版版社,2200448張張靜.WWinddowss多媒體體編程基基礎MM.北北京:清清化大學學出版社社,200059劉劉振安,徐峰.Winndowws實用用編程指指南MM.北北京:人人民郵電電出版社社,1999510劉長明明,楊工工明.VV

5、isuual C+ 實踐踐與提高高(多媒媒體篇)M. 北京京:中國國鐵道出出版社,20001指導教師師簽字:年月日江蘇師范大學科文學院課程設計報告- PAGE XXXVI -江蘇師范大學科文學院課程設計報告- PAGE -目 錄摘要IIIAbsttracct II1 緒論論 . 111.1 課題背背景 11.2 課程設設計的目目的. 12 設計計方案簡簡述 . 222.1 可行性性分析.22.2 需求分分析.23 詳細細設計.333.1窗窗體設計計.333.2游游戲項目目開發(fā).553.2.1棋牌牌設置.53.2.2放置置棋子功功能的開開發(fā).63.3.3游戲戲獲勝決決斷的開開發(fā).1223.2.4

6、游戲戲的調(diào)試試與運行行.2204 設計計結(jié)果及及分析.2224.1 程序的的結(jié)果.2224.2結(jié)結(jié)果分析析.2235總 結(jié)結(jié) .244參考文獻獻 .25摘 要要網(wǎng)絡游戲戲的出現(xiàn)現(xiàn)代表了了一種全全新娛樂樂方式的的誕生。目前網(wǎng)網(wǎng)絡游戲戲正以其其獨特的的魅力吸吸引著眾眾多的玩玩家。隨隨著游戲戲產(chǎn)業(yè)的的蓬勃發(fā)發(fā)展,將將需要越越來越多多的人加加入到游游戲開發(fā)發(fā)中來。本畢業(yè)設設計所完完成的五五子棋游游戲(網(wǎng)網(wǎng)絡版)是是在Wiindoows XP下下使用MMicrrosooft Vissuall C+6.0開發(fā)發(fā)的C/S系統(tǒng)統(tǒng),可以以實現(xiàn)網(wǎng)網(wǎng)絡間的的雙人對對戰(zhàn),并并且可以以提供多多媒體播播放功能能。系統(tǒng)統(tǒng)的

7、多媒媒體播放放功能可可以播放放MP33、WMMA等主主流格式式的音樂樂。本論文從從基本網(wǎng)網(wǎng)絡套節(jié)節(jié)字開始始入手,介介紹了一一些本系系統(tǒng)相關(guān)關(guān)的理論論知識,隨隨后詳細細介紹了了五子棋棋游戲(網(wǎng)網(wǎng)絡版)的的開發(fā)過過程。包包括服務務器端、客戶端端的soockeet編程程,五子子棋服務務器和客客戶端通通信的實實現(xiàn),五五子棋判判斷算法法的實現(xiàn)現(xiàn),主界界面視圖圖,多媒媒體播放放以及定定時器等等附加功功能的實實現(xiàn)。最最后對系系統(tǒng)進行行測試并并對所做做工作進進行總結(jié)結(jié)。關(guān)鍵詞 程序序設計;Fivvechhesss;MFFC;Absttracct AbsstraactOn-llinee gaamess brri

8、ngg too a neww foorm of entterttainnmennt. Unttil noww, oon-llinee gaamess iss chharmmingg moore andd moore plaayerrs. As thee deevellopmmentt off gaame inddusttry, thheree wiill be morre aand morre ddeveelopperss jooin in thee gaame devveloopmeent teaam.Theon -liine Blaack&Whiite gamme wwas devvelo

9、opedd byy Miicroosofft VVisuual C+6.00 onn Wiindoows XP plaatfoorm. Inn thhis gamme, twoo peeoplle ccan plaay tthe gamme oon llinee, aand thee gaame alsso pprovvidees mmulttimeediaa pllayeer ffuncctioon.The theesiss sttartt wiith inttrodducttionn off neetwoork socckett prrogrrammmingg, tthe devveloo

10、pmeent proocesssinng oof ttheon -liine Blaack&Whiite gamme aare inttrodduceed iin ddetaail as folllowwed. Thhe tthessis havve aa fuull touuch on serrverr annd cclieent socckett prrogrrammmingg, tthe commmunnicaatioon bbetwweenn seerveer aand cliientt waas iimpllemeenteed, thee allgorrithhm oof tthe

11、fivve-iin-aa-roow ggamee, tthe mulltimmediia pplayybacck ffuncctioons.Keywwordds : prrogrram; coompuuterr; MMFC; Fiivecchesss1課題背背景中國民族族原創(chuàng)網(wǎng)網(wǎng)絡游戲戲為中國國網(wǎng)絡游游戲產(chǎn)業(yè)業(yè)所做出出了巨大大貢獻,民民族原創(chuàng)創(chuàng)網(wǎng)絡游游戲已經(jīng)經(jīng)成為產(chǎn)產(chǎn)業(yè)發(fā)展展的主導導力量。同樣在在中國自自主研發(fā)發(fā)的民族族原創(chuàng)網(wǎng)網(wǎng)絡游戲戲已經(jīng)真真正成為為中國游游戲市場場的主導導力量。網(wǎng)絡游戲戲是通過過信息網(wǎng)網(wǎng)絡傳播播和實現(xiàn)現(xiàn)的互動動娛樂形形式,是是一種網(wǎng)網(wǎng)絡與文文化相結(jié)結(jié)合的產(chǎn)產(chǎn)業(yè)。近近年來,網(wǎng)

12、網(wǎng)絡文化化市場發(fā)發(fā)展很快快,隨著著互聯(lián)網(wǎng)網(wǎng)的迅速速普及、寬帶的的接入社社區(qū)和家家庭,我我國網(wǎng)絡絡游戲市市場發(fā)展展迅速并并進入了了一個高高速增長長期,并并已經(jīng)創(chuàng)創(chuàng)造了較較大的產(chǎn)產(chǎn)值,帶帶動了相相關(guān)產(chǎn)業(yè)業(yè)的發(fā)展展,對促促進我國國網(wǎng)絡經(jīng)經(jīng)濟和娛娛樂業(yè)的的發(fā)展、豐富互互聯(lián)網(wǎng)時時代人民民群眾的的文化娛娛樂生活活起到了了積極作作用。1.1設設計目的的在程序設設計中,通過設計、編制、調(diào)試一個五子棋的程序,加深對語法及語義分析原理的理解,并實現(xiàn)對命令語句的靈活應用。在程序設計中,可以用兩種方法解決問題:一是傳統(tǒng)的結(jié)構(gòu)化程序設計方法,二是更先進的面向?qū)ο蟪绦蛟O計方法。由于多個個函數(shù)均均需要訪訪問某些些數(shù)據(jù),這這

13、些數(shù)據(jù)據(jù)常被設設計為全全局變量量。而在面向向?qū)ο蟪坛绦蛟O計計中關(guān)鍵鍵是如何何將問題題域中的的實體(即即日常所所見的概概念)抽抽取出來來,作為為C+程序中中的類,而而屬性與與行為作作為類的的兩類要要素通常常是必不不可少的的,甚至至還應考考慮類必必須滿足足的約束束。2 設計計方案簡簡述如下是描描述整五五子棋游游戲的流流程, 開發(fā)一一個五子子棋游戲戲需要從從兩方面面入手。一是游游戲規(guī)則則,二是是技術(shù)。其實,任任何軟件件開發(fā)都都是這兩兩大類。根據(jù)項項目的特特點,將將不相關(guān)關(guān)的功能能分塊份份階段進進行。大大致流程程如下:1.畫畫棋盤;2畫棋棋子;33增加下下棋制約約條件;4.每每下一步步,判斷斷輸贏;5

14、.調(diào)調(diào)試運行行。2.1可可行性分分析游戲設計計已經(jīng)成成為現(xiàn)在在社會的的一種熱熱門行業(yè)業(yè)。五子子棋是一一種受大大眾廣泛泛喜愛的的游戲,其其規(guī)則簡簡單,變變化多端端,非常常富有趣趣味性和和消遣性性。這里里設計和和實現(xiàn)了了一個簡簡單的五五子棋單單機游戲戲。主要要應用了了Vissuall C+編程程來完成成這個游游戲的設設計的。本文主主要介紹紹了本游游戲開發(fā)發(fā)環(huán)境MMicrrosooft Vissuall C+ 66.0,使使用當前前優(yōu)秀的的開發(fā)工工具VCC+編編程。包包含了五五子棋程程序的棋棋盤初始始化、游游戲規(guī)則則、勝負負判斷。思路簡簡單明了了,程序序也較為為簡單。可以靈靈活運用用一學過過的c+

15、知知識來編編寫程序序。2.2 需求分分析近年來,隨隨著網(wǎng)絡絡的發(fā)展展,游戲戲成為許許多人關(guān)關(guān)注的焦焦點。與與傳統(tǒng)的的影音產(chǎn)產(chǎn)業(yè)一樣樣,游戲戲產(chǎn)業(yè)也也是娛樂樂行業(yè)的的一個重重要組成成部分,基基于數(shù)字字化的網(wǎng)網(wǎng)絡游戲戲更讓人人們找到到了前所所未有的的感受,并并已經(jīng)成成為全球球互聯(lián)產(chǎn)產(chǎn)業(yè)的熱熱點。五五子棋,亦亦稱“連連五子”、“串珠珠”、“五五目”、“五格格”等等等,日文文稱之為為“連珠珠”,英英文則稱稱之為“GGobaang”或或“Reenjuu”或“FFIR(Fivve IIn aa Roow)”,是是起源于于中國古古代的傳傳統(tǒng)黑白白棋種之之一,是是一種體體現(xiàn)民族族特色的的休閑游游戲,同同時能較

16、較好的鍛鍛煉人的的思維。具有廣廣闊的開開發(fā)前景景。3 詳細細設計3.1 窗體體設計利用MFFC AAppWWinzzardd生成五五子棋游游戲應用用程序框框架具體體步驟如如下:(1)執(zhí)執(zhí)行VCC程序,選選擇Fiile|Neww命令,彈彈出Neew對話話框.單單擊Prrojeectss標簽,轉(zhuǎn)轉(zhuǎn)到Prrojeectss選項卡卡,選擇擇MFCC ApppWiizarrd(eexe)選項,然然后在PProjjectt naame文文本框中中輸入FFiveecheess_44 。Laacattionn文本框框是指項項目的本本地路徑徑。(2)單單擊按鈕鈕,彈出出MFCC ApppWiinzaard_St

17、eep1對對話框。選中單單選按鈕鈕,如圖圖所示。(3)單單擊完成成按鈕,則則建立一一個單文文檔應用用框架。3.2游游戲項目目開發(fā) (四號號字 黑黑體) 3.22.1棋棋盤設計計1.在已已創(chuàng)建的的工程FFiveecheess_44中中添加畫畫棋盤的的函數(shù)。首先在在“Fivvechhesss_444.h” 頭文文件中定定義一個個用于顯顯示棋盤盤的自定定義公有有函數(shù):voiid CChecckerrboaard(CDCC*pDDC);然后在“Fivvechhesss_444Vieew.ccpp”源文件件中實現(xiàn)現(xiàn)該函數(shù)數(shù)。代碼碼如下:voidd CFFiveecheess_44VVieww:CChec

18、ckerrboaard(CDCC*pDDC) forr(innt ii=0;iMMoveeTo(i*550,00); /畫筆移移動到(i*550,00)點 pDCC-LLineeTo(i*550,110000); / 畫畫筆從(i*550,00)點到到(i*50,10000)點點 ffor(i=00;iMMoveeTo(0,ii*500); pDCC-LLineeTo(10000,ii*500); 2.在應應用程序序框架的的OnDDraww()函函數(shù)中調(diào)調(diào)用該畫畫棋盤函函數(shù),將將pDCC對象作作為實參參傳遞給給Cheeckeerbooardd()函函數(shù),代代碼如下下:voidd CFFivee

19、cheess_44VVieww:OOnDrraw(CDCC* ppDC)CFivvechhesss_444Docc* ppDocc = GettDoccumeent();ASSEERT_VALLID(pDooc);/ TTODOO: aadd draaw ccodee foor nnatiive datta hheree Chheckkerbboarrd(ppDC); /調(diào)用用自定義義的畫鍵鍵盤函數(shù)數(shù)3.編譯譯運行得得到如下下效果:一個空空棋盤 3.22.2放放置棋子子功能的的開發(fā) 按照規(guī)規(guī)劃,棋棋子使用用鼠標的的左鍵和和右鍵(分分別用這這兩鍵來來表示下下棋的雙雙方)來來進行單單機下棋棋,即是

20、是當用戶戶單擊左左鍵時,下下黑色棋棋子,用用戶單擊擊右鍵時時,下白白色棋子子。因此此,必須須為鼠標標添加鼠鼠標左鍵鍵和鼠標標右鍵單單擊的鼠鼠標消息息處理函函數(shù),步步驟如下下:1.右擊擊CFiivecchesssViiew類類,調(diào)用用添加消消息處理理函數(shù)的的對話框框,選擇擇Addd wiindoows MesssaggeHaandller2.添加加消息處處理函數(shù)數(shù)WM_LBUUTTOONDOOWN和和WM_RBUUTTOONDOOWN這這兩個消消息處理理函數(shù)。然后點點擊Eddit Exiisittingg退出對對話框。并添加加消息處處理函數(shù)數(shù)代碼。如下圖圖所示:添加鼠標標左鍵和和右鍵的的消息處處

21、理函數(shù)數(shù):(1).左鍵消消息voidd CFFiveecheess_44VVieww:OOnLBButttonDDownn(UIINT nFllagss, CCPoiint poiint) / TODDO: Addd yoour messsagge hhanddlerr coode herre aand/or calll ddefaaulttCBruush* brrushh = neww CBBrussh(RRGB(0,00,0) ;/定定義黑色色畫刷CDC* pDDC = thhis-GeetDCC(); /獲獲取當前前的圖形形設備指指針pDC-SeelecctObbjecct(bbruss

22、h); /選選中該黑黑色畫刷刷for(intt i = 00 ; i 10000 ; ii+=550)forr(innt jj = 0 ; j Elllippse(temmpPoointt.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20); CVieew:OnLLButttonnDowwn(nnFlaags, poointt);(2).右鍵消消息voidd CFFiveecheess_44VVieww:OOnRBButttonDDownn(UIINT nFllagss, CCPoiint poiint) / TTODOO:

23、AAdd youur mmesssagee haandller codde hheree annd/oor ccalll deefauult CBBrussh* bruush = nnew CBrrushh(RGGB(2255,2555,2555) ;/定義義白色畫畫刷CDC* pDDC = thhis-GeetDCC(); /獲獲取當前前的圖形形設備指指針pDC-SeelecctObbjecct(bbrussh); /選選中該白白色畫刷刷for(intt i = 00 ; i 10000 ; ii+=550)for(intt j = 00 ; j Elllippse(temmpPoointt

24、.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20); CVieew:OnRRButttonnDowwn(nnFlaags, poointt);到此便將將畫棋盤盤和棋子子的代碼碼編好,編編譯運行行如下:左擊鼠鼠標左鍵鍵畫黑點點,右擊擊鼠標右右鍵畫白白點3.但程程序至此此尚有兩兩點未解解決:其一,下下棋子的的約束條條件,即即雙方按按順序一一人下一一次才可可第二次次落棋子子。其二二,同一一方格不不能重復復下棋子子;解決第一一個問題題,添加加以下代代碼:在CFiivecchesss_444Viiew中中添加一一個公有有的整形形變量i

25、nt RigghtOORLeet; /定義保保存左鍵鍵或右鍵鍵下棋的的標記變變量構(gòu)造函數(shù)數(shù)將下棋棋的順序序初始化化為左鍵鍵先下CFivvechhesss_444Vieew:CFiivecchesss_444Viiew()/ TTODOO: aadd connstrructtionn coode herre RiighttORLLet=0; /初始化化默認左左鍵先下下 修改鼠標標的左鍵鍵和右鍵鍵的單擊擊消息處處理函數(shù)數(shù),在畫畫棋子之之前判斷斷輪到哪哪方下棋棋,代碼碼如下:左鍵代碼碼:voidd CFFiveecheess_44VVieww:OOnLBButttonDDownn(UIINT nFl

26、lagss, CCPoiint poiint) / TTODOO: AAdd youur mmesssagee haandller codde hheree annd/oor ccalll deefauult iif(RRighhtORRLefft=0 ) CBruush* brrushh = neww CBBrussh(RRGB(0,00,0) ;/定定義黑色色畫刷CDC* pDDC = thhis-GeetDCC(); /獲獲取當前前的圖形形設備指指針pDC-SeelecctObbjecct(bbrussh); /選選中該黑黑色畫刷刷for(intt i = 00 ; i 10000 ;

27、ii+=550)for(intt j = 00 ; j Elllippse(temmpPoointt.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20); RigghtOORLeeft+;/鼠標標狀態(tài)變變化為00 CViiew:OnnLBuuttoonDoown(nFllagss, ppoinnt);右鍵代碼碼:voidd CFFiveecheess_44VVieww:OOnRBButttonDDownn(UIINT nFllagss, CCPoiint poiint) / TTODOO: AAdd youur mmesssa

28、gee haandller codde hheree annd/oor ccalll deefauult if(RigghtOORLeeft=1) CBrrushh* bbrussh = neew CCBruush(RGBB(2555,2255,2555) ;/定義白白色畫刷刷CDC* pDDC = thhis-GeetDCC(); /獲獲取當前前的圖形形設備指指針pDC-SeelecctObbjecct(bbrussh); /選選中該白白色畫刷刷for(intt i = 00 ; i 10000 ; ii+=550)for(intt j = 00 ; j Elllippse(temmpPoo

29、intt.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20); RigghtOORLeeft;/鼠標標狀態(tài)變變化為11,鼠標標右鍵按按下后,再再次改變變鼠標狀狀態(tài) CVieew:OnRRButttonnDowwn(nnFlaags, poointt);其二,解解決第二二個問題題:在Fivvechhesss_444Vieew.hh頭文件件中加入入3行公公有代碼碼,并且且在該頭頭文件中中包含vvecttor的的頭文件件,代碼碼如下:# inncluudelasss CFFiveecheess_44VVieww : pubblicc

30、 CVVieww;std:veectoor chhesssVecc ;booll iss Loocattionn(CPPoinnt ccp); voiid LLocaatioon(CCPoiint cp);.;(2)根根據(jù)函數(shù)數(shù)名在正正確位置置添加或或修改以以下函數(shù)數(shù).添加實實現(xiàn)放置置棋子函函數(shù)額判判斷放置置許可函函數(shù):booll CFFiveecheess_44VVieww:iisLoocattionn(CPPoinnt ccp)booll issLocc = truue ;for(intt i = 00 ; i chhesssVecc.siize() ; i+)if(ccp.xx = ch

31、hesssVecci.x & cp.y = cchesssVeecii.yy)isLooc = faalsee ;retuurn isLLoc ;voidd CFFiveecheess_44VVieww:LLocaatioon(CCPoiint cp)chesssVeec.ppushh_baack(cp);修修改鼠標標左鍵和和右鍵單單擊的消消息處理理函數(shù)代代碼如下下,并注注意為了了消除該該缺陷,“鼠標消息標志變量變化”的位置有所改變,代碼如下,該代碼已經(jīng)將下棋的全部約束條件全部實現(xiàn)了。voidd CFFiveecheess_44VVieww:OOnLBButttonDDownn(UIINT n

32、Fllagss, CCPoiint poiint) / TTODOO: AAdd youur mmesssagee haandller codde hheree annd/oor ccalll deefauultif(RRighhtORRLefft = 00 ) CCBruush* brrushh = neww CBBrussh(RRGB(0,00,0) ;/定定義黑色色畫刷CDC* pDDC = thhis-GeetDCC(); /獲獲取當前前的圖形形設備指指針pDC-SeelecctObbjecct(bbrussh); /選選中該黑黑色畫刷刷for(intt i = 00 ; i 1000

33、0 ; ii+=550)for(intt j = 00 ; j Elllippse(temmpPoointt.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20); LLocaatioon(ttemppPoiint); /畫了了該點后后,將該該點插入入到向量量中RighhtORRLefft+ ; /鼠鼠標消息息標志變變量變化化(注意意) CViiew:OnnLBuuttoonDoown(nFllagss, ppoinnt);voidd CFFiveecheess_44VVieww:OOnRBButttonDDownn(UIINT

34、 nFllagss, CCPoiint poiint) / TTODOO: AAdd youur mmesssagee haandller codde hheree annd/oor ccalll deefauult if(RigghtOORLeeft = 1 )CBruush* brrushh = neww CBBrussh(RRGB(2555,2555,2255) ; /定定義白色色畫刷CDC* pDDC = thhis-GeetDCC(); /選選中該白白色畫刷刷pDC-SeelecctObbjecct(bbrussh);for(intt i = 00 ; i 10000 ; ii+=5

35、50)for(intt j = 00 ; j Elllippse(temmpPoointt.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20);Locaatioon(ttemppPoiint);RighhtORRLefft ; /鼠鼠標消息息標志變變量變化化(注意意)CVieew:OnRRButttonnDowwn(nnFlaags, poointt);3.2.3游戲戲獲勝決決斷的開開發(fā)1.該功功能是棋棋牌游戲戲中較難難的功能能。所以以編寫程程序時要要細心。游戲規(guī)規(guī)則是這這樣能夠夠的:如果某一一方(黑黑棋或白白棋)在在同一行行

36、或同一一列或同同一斜線線上具有有5個同同色的棋棋子,則則該顏色色的這一一方就獲獲勝。因因此可以以使用一一個整形形二維數(shù)數(shù)組來記記錄當前前的棋局局情況,二二維數(shù)組組的值定定義如下下:0:表示示該位子子沒有棋棋子;1:表示示該位置置已經(jīng)放放了黑色色棋子;2:表示示該位置置已經(jīng)放放了白色色棋子;解決的問問題:問題1:要在下下每個棋棋子后,將將數(shù)組變變量對應應位置的的數(shù)組元元素值做做改變,變變?yōu)椤?”或“2”,這個個只需要要在鼠標標消息處處理函數(shù)數(shù)中調(diào)用用Loccatiion()函數(shù)數(shù)后改變變數(shù)組元元素值即即可。問題2:下每個個棋子后后,判斷斷在這個個棋子同同一行同同一列或或同一斜斜線上是是否具有有連

37、續(xù)55個同色色的棋子子,若有有,則宣宣判該方方勝利,并并退出游游戲,如如果沒有有,則繼繼續(xù)游戲戲,輪到到下一方方下棋。具體實施施步驟如如下;增加棋盤盤狀態(tài)記記錄數(shù)組組。在FFiveecheess_44VVieww.h頭頭文件中中定義一一個公有有的整形形數(shù)組,如如下代碼碼:int cheessAArr22020;并在視圖圖類的構(gòu)構(gòu)造函數(shù)數(shù)中將整整形數(shù)組組初始化化為0,代代碼為:CFivvechhesss_444Vieew:CFiivecchesss_444Viiew()/ TTODOO: aadd connstrructtionn coode herre RigghtOORLeeft=0; /初

38、初始化棋棋盤,左左鍵先下下棋 ffor(intt i=0;ii200;i+) ffor(intt j=0;jj 0 & ii 0 & ii 0 & jj 0 & jj 0 & jj 0 & i 0 & jj 0 & i 0 & jj 0 & i 0 & jj 0 & i GeetDCC(); /獲獲取當前前的圖形形設備指指針pDC-SeelecctObbjecct(bbrussh); /選選中該黑黑色畫刷刷for(intt i = 00 ; i 10000 ; ii+=550)for(intt j = 00 ; j Elllippse(temmpPoointt.x-20,temmpPooint

39、t.y-20,temmpPoointt.x+20,temmpPoointt.y+20); Loccatiion(temmpPoointt);/畫了了該點后后,將該該點插入入到向量量中 cchesssArrrttemppPoiint.x/550temmpPoointt.y/50 = 1 ;if( isWWin(poiint) )MesssageeBoxx(黑黑色棋子子獲勝!);RighhtORRLefft+ ;CVieew:OnLLButttonnDowwn(nnFlaags, poointt);鼠標右鍵鍵具有輸輸贏判斷斷的鼠標標消息處處理函數(shù)數(shù)與左鍵鍵類似,代代碼如下下:voidd CFFiv

40、eecheess_44VVieww:OOnRBButttonDDownn(UIINT nFllagss, CCPoiint poiint) / TTODOO: AAdd youur mmesssagee haandller codde hheree annd/oor ccalll deefauult if(RigghtOORLeeft = 1 )CBruush* brrushh = neww CBBrussh(RRGB(2555,2555,2255) ;CDC* pDDC = thhis-GeetDCC();pDC-SeelecctObbjecct(bbrussh);for(intt i =

41、00 ; i 10000 ; ii+=550)for(intt j = 00 ; j Elllippse(temmpPoointt.x-20,temmpPoointt.y-20,temmpPoointt.x+20,temmpPoointt.y+20);Locaatioon(ttemppPoiint);chesssArrrttemppPoiint.x/550temmpPoointt.y/50 = 2 ;if( isWWin(poiint) )MesssageeBoxx(白白色棋子子獲勝!);RighhtORRLefft ;CVieew:OnRRButttonnDowwn(nnFlaags, po

42、ointt);3.2.4游戲戲的調(diào)試試與運行行編譯程序序:鼠標標點擊 組建全部部重建。編譯若若出現(xiàn)錯錯誤提示示,則根根據(jù)提示示修改程程序,直直至編譯譯無誤。然后運運行。得得到的結(jié)結(jié)果如下下未進行游游戲時的的結(jié)果:開始游戲戲后的結(jié)結(jié)果:4 設計計結(jié)果及及分析4.1程程序的結(jié)結(jié)果黑棋獲勝勝的結(jié)果果為:白棋獲勝勝的結(jié)果果為:4.2結(jié)結(jié)果分析析畫棋子的的原理在在于,讀讀取鼠標標點擊的的坐標來來判斷點點擊位所所在的格格子,然然后求出出該格子子的中心心位置坐坐標,以以該中心心位置為為圓心畫畫黑色圓圓或白色色圓。棋棋牌游戲戲中都有有輪流下下棋或出出牌的一一般性規(guī)規(guī)則,這這種情況況下,都都采用令令牌變量量,通

43、過過令牌變變量來判判斷當前前誰有下下棋或出出牌的權(quán)權(quán)利。5 總結(jié)結(jié)本畢業(yè)設設計是一一款休閑閑五子棋棋游戲,離離真正意意義上的的廣域網(wǎng)網(wǎng)網(wǎng)絡游游戲還要要差距。但是它它已經(jīng)擁擁有了局局域上的的連接進進行游戲戲的功能能,。在設計計中確實實遇到了了不少的的困難,但但是通過過調(diào)試已已經(jīng)解決決了絕大大多數(shù)問問題。游游戲設計計已經(jīng)成成為現(xiàn)在在社會的的一種熱熱門行業(yè)業(yè)。五子子棋是一一種受大大眾廣泛泛喜愛的的游戲,其其規(guī)則簡簡單,變變化多端端,非常常富有趣趣味性和和消遣性性。這里里設計和和實現(xiàn)了了一個雙雙人對下下的五子子棋單機機游戲。主要應應用了VVisuual C+編程來來完成這這個游戲戲的設計計的。本本文主

44、要要介紹了了本游戲戲開發(fā)環(huán)環(huán)境Miicroosofft VVisuual C+ 6.0,使使用當前前優(yōu)秀的的開發(fā)工工具VCC+編編程。包包含了五五子棋程程序的棋棋盤初始始化、游游戲規(guī)則則、勝負負判斷方方法。但是仍仍有一些些不足之之處:游游戲只是是局限于于兩個人人之間; 并且且局限于于一個電電腦的鼠鼠標;沒沒有定時時功能及及提醒功功能。這款游戲戲可以繼繼續(xù)完善善菜單功功能也可可以通過過擴展實實現(xiàn)成一一款圍棋棋游戲,總總之它可可以繼續(xù)續(xù)發(fā)展成成一個比比較成熟熟的休閑閑類小游游戲。還還有很多多需要完完善和改改進的地地方。參考文獻獻1 四維科科技,丁丁展,湯湯倩.VVisuual C+ 游戲戲開發(fā)技技術(shù)與實實例MM.北北京:人人民郵電電出版社社,200052求求是科技技,張宏宏林.VVisuual C+ 6.0程序序設計與與開發(fā)技技術(shù)大

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論