版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> C++課程設(shè)計(jì)報(bào)告</b></p><p> ( 2012 -- 2013 年度第 二 學(xué)期)</p><p><b> 猜數(shù)游戲 </b></p><p><b> 目 錄</b></p><p><b> 目 錄
2、2</b></p><p> 1 概 述1</p><p> 1.1 課程設(shè)計(jì)目的1</p><p> 1.2 課程設(shè)計(jì)內(nèi)容1</p><p> 2 系統(tǒng)總體設(shè)計(jì)1</p><p> 2.1 系統(tǒng)目標(biāo)1</p><p> 2.2 主體功能2</p&
3、gt;<p> 2.3 系統(tǒng)流程3</p><p> 2.4 開發(fā)環(huán)境5</p><p><b> 3系統(tǒng)詳細(xì)設(shè)計(jì)5</b></p><p> 3.1系統(tǒng)主界面設(shè)計(jì)5</p><p> 3.2 提示鍵H、K的模塊設(shè)計(jì)6</p><p> 3.3統(tǒng)計(jì)分?jǐn)?shù)模塊設(shè)計(jì)
4、8</p><p><b> 4 測試9</b></p><p> 4.1 測試方案9</p><p> 4.2 測試結(jié)果10</p><p><b> 5 小結(jié)11</b></p><p><b> 參考文獻(xiàn)13</b></p
5、><p><b> 附 錄14</b></p><p> 附錄1 源程序清單14</p><p> 猜數(shù)游戲的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 1 概 述 </p><p> 1.1 課程設(shè)計(jì)目的</p><p> a)鞏固并加深學(xué)生對C+
6、+語言程序設(shè)計(jì)知識(shí)的理解;</p><p> b)培養(yǎng)學(xué)生面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,使學(xué)生認(rèn)識(shí)面向過程和面向?qū)ο髢煞N設(shè)計(jì)方法的區(qū)別;</p><p> c)進(jìn)一步掌握和應(yīng)用VC++ 6.0集成開發(fā)環(huán)境;</p><p> d)提高運(yùn)用C++語言解決實(shí)際問題的能力; </p><p> e)初步掌握開發(fā)小型實(shí)用軟件的基本方法,能獨(dú)立設(shè)計(jì)、
7、實(shí)現(xiàn)具有實(shí)際功能的小系統(tǒng);</p><p> f)掌握書寫程序設(shè)計(jì)開發(fā)文檔的能力(書寫課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告)</p><p> 1.2 課程設(shè)計(jì)內(nèi)容</p><p><b> 課程名稱:猜數(shù)游戲</b></p><p> 說明:用戶從鍵盤輸入4位不重復(fù)的數(shù),來匹配計(jì)算機(jī)給出的4位隨機(jī)數(shù),若數(shù)字和位置均等同,表示用戶贏
8、了。每猜一次,計(jì)算機(jī)均給出提示信息(x,y),x表示數(shù)字、位置都匹配的個(gè)數(shù),y表示數(shù)字匹配但位置不匹配的個(gè)數(shù)。</p><p><b> 要求:</b></p><p> a)設(shè)計(jì)友好的中文用戶交互界面。</p><p> b)按H鍵,可得到更詳細(xì)的幫助信息。</p><p> c)按K鍵后,可以查看計(jì)算機(jī)所給的
9、4位數(shù),但查看前需要輸入密碼,密碼自定。</p><p> d)猜的結(jié)果以分值的形式給出,每猜錯(cuò)1次扣100分,若猜對1個(gè)數(shù),獎(jiǎng)勵(lì)20分。</p><p> e)每次游戲結(jié)束后將分值存盤,文件名自定。</p><p><b> 2 系統(tǒng)總體設(shè)計(jì)</b></p><p><b> 2.1 系統(tǒng)目標(biāo)<
10、/b></p><p> 該題目是一個(gè)通過自己的推斷猜數(shù)字小游戲。編寫該程序要完成實(shí)現(xiàn)系統(tǒng)自定義四位不同數(shù)字、輸入四位不同數(shù)字、判斷輸入的四位不同數(shù)字的對錯(cuò)情況的功能以及玩游戲時(shí)的提示功能、管理功能和與退出功能。</p><p> 這次課設(shè)是要求用C++編寫程序,實(shí)現(xiàn)數(shù)字之間的相互比較,讓玩家找出電腦寫的四位數(shù)字,而玩家在找出四位數(shù)字中,電腦需要給出玩家一些提示信息,用以幫助玩家
11、找出答案。對于猜位數(shù)不等的四位數(shù),電腦需要在程序剛運(yùn)行時(shí),確定一個(gè)隨機(jī)的四位數(shù),且各個(gè)位數(shù)不相等。而在玩家輸入數(shù)字時(shí),也需要檢驗(yàn)玩家輸入的數(shù)字是否滿足條件,即一個(gè)各個(gè)位數(shù)不重復(fù)的四位數(shù)。只有玩家輸入正確的數(shù)字后,電腦才能進(jìn)行比較數(shù)字的運(yùn)算,如果玩家輸入的數(shù)字和電腦的不相等,輸出提示信息,并應(yīng)從新讀取玩家的數(shù)字進(jìn)行判斷,直到玩家放棄猜數(shù)字或數(shù)字猜對為止。</p><p> 當(dāng)玩家在玩游戲時(shí)每輸入一次四位不同數(shù)字電
12、腦都會(huì)給出位置數(shù)字對錯(cuò)的的信息,并對此算出所得分?jǐn)?shù)(每猜錯(cuò)1次扣100分,若猜對1個(gè)數(shù),獎(jiǎng)勵(lì)20分。</p><p> )。但玩家經(jīng)過多次猜測還沒猜出答案可以使用提示的功能即比較詳細(xì)的敘述玩家所猜的數(shù)字的數(shù)字和位置的對錯(cuò)情況。當(dāng)玩家想知道電腦給出的數(shù)字時(shí)可以使用管理功能輸入正確的密碼可以知道電腦所給的正確答案。當(dāng)玩家不想玩此游戲可是使用退出鍵并且在退出時(shí)電腦會(huì)給玩家正確的答案。</p><p
13、><b> 2.2 主體功能</b></p><p> 該游戲的主體功能主要有以下幾個(gè)重要的模塊:電腦實(shí)現(xiàn)自定義模塊、電腦對玩家所猜數(shù)字進(jìn)行處理的模塊、電腦處理玩家游戲排名模塊以及電腦處理玩家退出游戲的模塊。</p><p> 其中電腦自定義模塊在玩家開始玩游戲時(shí)電腦事先確定好四位不同數(shù)字作為正確數(shù)字供玩家猜測;對玩家數(shù)字所猜測的數(shù)字處理模塊主要就是把玩家
14、所猜測的數(shù)字與正確答案做個(gè)比較然后反饋給玩家;玩家排名模塊就是把各個(gè)玩家玩的游戲統(tǒng)計(jì)所得分?jǐn)?shù)并且做出比較排列出前三名;退出模塊主要是玩家想放棄游戲時(shí)做游戲作出處理并與此同時(shí)告訴玩家答案。</p><p> 該游戲的各個(gè)模塊功能如下圖所示:</p><p> 圖2-1 系統(tǒng)功能模塊圖</p><p><b> 2.3 系統(tǒng)流程</b><
15、;/p><p> 如下圖所示我畫的總體流程圖想要展現(xiàn)的是,開始玩家進(jìn)入游戲電腦自定義一組四位不同數(shù)字供玩家猜測,接著開始游戲玩家輸入四位不同數(shù)字電腦會(huì)對這組數(shù)字與正確答案做出比較并告知玩家,接著玩家可有兩種選擇一是是否繼續(xù)猜數(shù),二是是否需要提示。其中如果需要提示通過使用快捷鍵電腦會(huì)給玩家詳細(xì)的錯(cuò)誤提醒。如果繼續(xù)游戲那么回到開始輸入四位不同數(shù)字階段,但是如果玩家想退出游戲可以使用快捷鍵退出游戲。在玩游戲的過程玩家每猜
16、一次電腦都會(huì)給玩家所得分?jǐn)?shù)</p><p><b> 2.4 開發(fā)環(huán)境</b></p><p> 該程序是在windows系統(tǒng)下的C++語言開發(fā)和應(yīng)用VC++ 6.0集成開發(fā)環(huán)境。</p><p><b> 3系統(tǒng)詳細(xì)設(shè)計(jì)</b></p><p> 3.1系統(tǒng)主界面設(shè)計(jì)</p>
17、<p> 該界面清晰易懂,主要包括游戲的前三名、游戲的漢字提醒以及鍵盤輸入提醒。游戲名次排序可以展現(xiàn)玩家玩此游戲的熟練程度以及玩此游戲能力,說已設(shè)立了游戲的名次排序可以激發(fā)游戲者競爭意識(shí)。游戲界面的提醒部分可以使游戲者熟練的玩此游戲,以及游戲的功能。</p><p><b> 主要代碼有:</b></p><p> cout<<"
18、;輸入您所猜測的4位不同的數(shù)字(輸入9999退出,輸入H幫助,輸入K管理):"<<endl;</p><p> cout<<"****************游戲金榜****************"<<endl;</p><p> cout<<"**第1名"<<mark1&l
19、t;<endl<<"**第2名"<<mark2<<endl<<"**第3名"<<mark3<<endl;</p><p><b> 其主要界面如下:</b></p><p> 3.2 提示鍵H、K的模塊設(shè)計(jì)</p><p>
20、 玩家在玩游戲時(shí)通過H、K鍵完成游戲的幫助和管理。當(dāng)玩家想放棄玩游戲想知道正確答案時(shí)可以使用K鍵,但是因?yàn)閷儆诠芾碚叩慕輳剿砸斎朊艽a。當(dāng)密碼輸入錯(cuò)誤時(shí)界面會(huì)提示輸入錯(cuò)誤玩家會(huì)再次進(jìn)入游戲狀態(tài)。但玩家玩游戲時(shí)覺得比較難不好猜測可以使用H鍵,電腦會(huì)給出詳細(xì)的提示(例如:玩家要猜測的數(shù)字4369可是玩家猜測是3568這時(shí)使用H鍵電腦會(huì)給出提示“您的第一位數(shù)字猜對,但位置不對;您的第三位數(shù)字猜對,位置猜對”)</p><
21、;p> 其詳細(xì)的流程圖如下:</p><p> 3.3統(tǒng)計(jì)分?jǐn)?shù)模塊設(shè)計(jì)</p><p> 玩家在玩游戲輸入四位不同數(shù)字之后電腦系統(tǒng)會(huì)為玩家做一次分?jǐn)?shù)統(tǒng)計(jì)。游戲開始時(shí)電腦給玩家自定義分?jǐn)?shù)為1000分,當(dāng)玩家開始猜數(shù)的游戲時(shí)沒猜錯(cuò)一次扣100分,若猜對一個(gè)數(shù),獎(jiǎng)勵(lì)20分。(例如:玩家要猜數(shù)9852,但玩家輸入1234時(shí)玩家得分為960分當(dāng)玩家再次輸入數(shù)字1235時(shí)玩家得分為920分
22、)</p><p><b> 其流程圖如下所示:</b></p><p><b> 4 測試</b></p><p><b> 4.1 測試方案</b></p><p> 測試方案一:測試執(zhí)行時(shí)出現(xiàn)重復(fù)的情況</p><p> 圖4-1 錯(cuò)誤
23、輸入數(shù)字執(zhí)行圖</p><p> 測試方案二:測試在需要幫助時(shí)鍵盤輸h及H的情況</p><p> 圖4-2 在鍵盤輸入小寫字母錯(cuò)誤時(shí)執(zhí)行情況</p><p><b> 4.2 測試結(jié)果</b></p><p> 測試結(jié)果一:但玩家想知道游戲答案時(shí)可以輸入大寫字母K并輸入密碼得以實(shí)現(xiàn)</p><
24、;p> 圖4-3 玩家進(jìn)行管理狀態(tài)執(zhí)行情況</p><p> 測試結(jié)果二:玩家如果想結(jié)束游戲輸入9999來實(shí)現(xiàn)</p><p> 圖4-4 玩家終止游戲的情況</p><p> 測試結(jié)果三:玩家想知道游戲答案是密碼輸入密碼錯(cuò)誤。</p><p> 圖4-5玩家執(zhí)行公布游戲答案密碼錯(cuò)誤的情況</p><p&g
25、t;<b> 5 小結(jié)</b></p><p> 這周的課程設(shè)計(jì)就要結(jié)束了。從最開始的做題到現(xiàn)在的報(bào)告總結(jié)我完成一個(gè)過程。在這個(gè)過程里我領(lǐng)悟了很多。</p><p> 在最開始的做實(shí)驗(yàn)報(bào)告時(shí)感覺挺難的之前根本就沒有寫過關(guān)于游戲的實(shí)驗(yàn)報(bào)告,不過還好我以前沒事的時(shí)候玩過這游戲,所以比較了解這個(gè)游戲各個(gè)部分。雖然在中間寫的過程中還有很多不會(huì)的東西,但是通過查看書本和資
26、料還有問同學(xué)和老師,基本上都解決了。其中有一部分的程序無法滿足題目的要求 在老師的幫助下最后得到了解決,通過這件事我感覺自己還有還有很多不足,仍然有一些有待提高的地方。</p><p> 我覺得課程設(shè)計(jì)的作用一方面是最基本的就是要完成這一科目,差不多也是對自己的一個(gè)階段性的總結(jié);還有就是在整個(gè)設(shè)計(jì)的過程中,讓我們認(rèn)真的獨(dú)立思考,在和同學(xué)交流的過程中也增強(qiáng)了我們的語言組織能力和彼此之間的友誼。通過課程設(shè)計(jì)讓我們不
27、斷的發(fā)現(xiàn)自己的不足從而去改善,這是一種學(xué)習(xí)的態(tài)度,不僅僅是在這次的課程設(shè)計(jì)中,在以后的無論生活還是學(xué)習(xí)方面都應(yīng)該注意和努力改善。通過這次比較完整的一個(gè)程序的設(shè)計(jì),我擺脫了單純的理論知識(shí)學(xué)習(xí)狀態(tài),和實(shí)際設(shè)計(jì)的結(jié)合鍛煉了我的綜合運(yùn)用所學(xué)的基礎(chǔ)知識(shí),解決實(shí)際問題的能力,同時(shí)也提高我查閱文獻(xiàn)資料、對程序整體的把握等其他能力水平,而且通過對整體的掌控,對局部的取舍,以及對細(xì)節(jié)的斟酌處理,都使我的能力得到了鍛煉,經(jīng)驗(yàn)得到了豐富。這是我們都希望看到的
28、也正是我們進(jìn)行課程設(shè)計(jì)的目的所在。雖然設(shè)計(jì)內(nèi)容繁多,過程繁瑣但我的收獲卻更加豐富。各種組件的運(yùn)用,各種算法的應(yīng)用,各種控件的利用我都是隨著設(shè)計(jì)的不斷深入而不斷熟悉并逐步掌握的。和老師以及同學(xué)的溝通交流更使我對程序整體的規(guī)劃與設(shè)計(jì)有了新的認(rèn)識(shí)也對自己提出了新的要求。提高是有限的但提高也是全面的,正是這一次設(shè)計(jì)讓我積累了許多實(shí)際經(jīng)驗(yàn),也</p><p><b> 參考文獻(xiàn)</b></p&
29、gt;<p> [1]譚浩強(qiáng).C++程序設(shè)計(jì)(第二版)[M].北京:清華大學(xué)出版社,2012. [2]譚浩強(qiáng).C++程序設(shè)計(jì)題解與上機(jī)指導(dǎo)(第二版)[M].北京:清華大學(xué)出版社,2012.</p><p><b> 附 錄</b></p><p><b> 附錄1 源程序清單</b></p><p&
30、gt; #include <iostream></p><p> #include <cstdlib></p><p> #include <ctime></p><p> #include <fstream></p><p> #include <cstdlib><
31、/p><p> using namespace std;</p><p> int x1,x2,x3,x4;</p><p> int y1,y2,y3,y4; //定義全局變量來記錄玩家猜數(shù)的情況</p><p> void FetchHisGuess(int&,int&,int&,int&);&l
32、t;/p><p> void CompNumber(int&,int&,int&,int&);</p><p> bool End(int,int,int,int);</p><p> bool Help(int,int,int,int,int&,int&,int&,int&,int&,int
33、&,int&,int&);</p><p> bool Manage(int,int,int,int,int,int,int,int);</p><p> void TextX(int,int,int,int,int,int,int,int,int&,int&,int&,int&);</p><p> v
34、oid TextY(int,int,int,int,int,int,int,int,int&,int&,int&,int&);</p><p> bool Begin(int,int,int);</p><p> void rank();</p><p> void ReadMark(); //輸出保存得分的前三名
35、</p><p> int nCount=1000;</p><p> static int mark1=0,mark2=0,mark3=0;</p><p> int main()</p><p><b> {</b></p><p> ReadMark();</p>&
36、lt;p> int iHisA,iHisB,iHisC,iHisD; //用戶輸入值</p><p> int iComA,iComB,iComC,iComD;</p><p> bool bDone=false;</p><p> bool bEnd=false;</p><p> int iGuessCounter=1
37、;</p><p> while (bEnd==false)</p><p><b> {</b></p><p> iHisA=0,iHisB=0,iHisC=0,iHisD=0;</p><p> iComA=0,iComB=0,iComC=0,iComD=0;</p><p> x
38、1=0,x2=0,x3=0,x4=0;</p><p> y1=0,y2=0,y3=0,y4=0;</p><p> bDone=false;</p><p> int iGuessCount=1;</p><p> CompNumber(iComA,iComB,iComC,iComD);</p><p>
39、while(bDone==false)</p><p><b> {</b></p><p> nCount-=40;</p><p> FetchHisGuess(iHisA,iHisB,iHisC,iHisD);</p><p> nCount+=(x1+x2+x3+x4)*20; //每
40、猜對1個(gè)數(shù)的位置加20</p><p> bEnd=End(iHisA,iHisB,iHisC,iHisD);</p><p> if(Help(iHisA,iHisB,iHisC,iHisD,x1,x2,x3,x4,y1,y2,y3,y4)==true)</p><p><b> continue;</b></p><
41、;p> if(Manage(iHisA,iHisB,iHisC,iHisD,iComA,iComB,iComC,iComD)==true)</p><p><b> continue;</b></p><p> x1=0,x2=0,x3=0,x4=0;</p><p> y1=0,y2=0,y3=0,y4=0;</p>
42、<p> TextY(iHisA,iHisB,iHisC,iHisD,iComA,iComB,iComC,iComD,y1,y2,y3,y4);</p><p> TextX(iHisA,iHisB,iHisC,iHisD,iComA,iComB,iComC,iComD,x1,x2,x3,x4);</p><p> if(bEnd==true)</p>&
43、lt;p><b> {</b></p><p> cout<<"[正確的結(jié)果]"<<iComA<<iComB<<iComC<<iComD<<endl;</p><p> cout<<"您的最終得分:"<<nCount<
44、;<"歡迎下次再玩!"<<endl;</p><p> bDone=true;</p><p><b> rank();</b></p><p><b> }</b></p><p><b> else</b></p>
45、<p><b> {</b></p><p> if((x1+x2+x3+x4)==4)</p><p><b> {</b></p><p> cout<<"正確"<<endl<<"您一共猜了"<<iGuessCo
46、unter<<"次"<<endl;</p><p> nCount+=100;</p><p> bDone=true;</p><p><b> }</b></p><p><b> else</b></p><p>&l
47、t;b> {</b></p><p> cout<<"您有"<<x1+x2+x3+x4<<"位數(shù)字位置匹配,"<<y1+y2+y3+y4<<"位數(shù)字?jǐn)?shù)字匹配,"<<4-(x1+x2+x3+x4)-(y1+y2+y3+y4)<<"位數(shù)字不對&
48、quot;<<endl;</p><p> cout<<"您的得分是"<<nCount<<endl;</p><p><b> rank();</b></p><p> iGuessCounter++;</p><p><b> }&l
49、t;/b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> return 0;</b></p><p><b>
50、}</b></p><p> void FetchHisGuess(int&iHisGuess1,int&iHisGuess2,int&iHisGuess3,int&iHisGuess4)</p><p><b> {</b></p><p> while(true)</p>&l
51、t;p><b> {</b></p><p> cout<<"輸入您所猜測的4位不同的數(shù)字(輸入9999退出,輸入H幫助,輸入K管理):"<<endl;</p><p> scanf("%c",&iHisGuess1);</p><p> //10代表換行,去
52、除上一次輸入之后的換行符</p><p> if(iHisGuess1==10)</p><p><b> {</b></p><p> scanf("%c",&iHisGuess1);</p><p><b> }</b></p><p>
53、; if(iHisGuess1==10)</p><p><b> {</b></p><p> scanf("%c",&iHisGuess1);</p><p><b> }</b></p><p> if(iHisGuess1=='K')&l
54、t;/p><p><b> {</b></p><p> iHisGuess1=iHisGuess2=iHisGuess3=iHisGuess4=7;</p><p><b> return;</b></p><p><b> }</b></p><p&
55、gt; if(iHisGuess1=='H')</p><p><b> {</b></p><p> iHisGuess1=iHisGuess2=iHisGuess3=iHisGuess4=8;</p><p><b> return;</b></p><p><b&
56、gt; }</b></p><p> iHisGuess1=iHisGuess1-0x30;</p><p> scanf("%1d%1d%1d",&iHisGuess2,&iHisGuess3,&iHisGuess4);</p><p> if((iHisGuess1==9&&iHis
57、Guess2==9&&iHisGuess3==9&&iHisGuess4==9)||(iHisGuess1==8&&iHisGuess2==8&&iHisGuess3==8&&iHisGuess4==8)||(iHisGuess1==7&&iHisGuess2==7&&iHisGuess3==7&&iHisGu
58、ess4==7))</p><p><b> {</b></p><p><b> return;</b></p><p><b> }</b></p><p> if(iHisGuess1==iHisGuess2||iHisGuess1==iHisGuess3||iH
59、isGuess1==iHisGuess4||iHisGuess2==iHisGuess3||iHisGuess2==iHisGuess4||iHisGuess3==iHisGuess4)</p><p><b> {</b></p><p> cout<<"錯(cuò)誤的輸入,請重新輸入[需要輸入4位不同的數(shù)字]"<<endl;
60、</p><p><b> continue;</b></p><p><b> }</b></p><p><b> return;</b></p><p><b> }</b></p><p><b> }&
61、lt;/b></p><p> void CompNumber(int&a,int&b,int&c,int&d)</p><p><b> {</b></p><p> srand(time(0));</p><p> bool bIS=false;</p>&
62、lt;p> while(bIS==false)</p><p><b> {</b></p><p> a=1+(rand()%9);</p><p> b=1+(rand()%9);</p><p> c=1+(rand()%9);</p><p> d=1+(rand()%9
63、);</p><p> if(a!=b&&a!=c&&a!=d&&b!=c&&b!=d&&c!=d)</p><p><b> {</b></p><p><b> bIS=true;</b></p><p>&l
64、t;b> }</b></p><p> else{bIS=false;}</p><p><b> }</b></p><p><b> }</b></p><p> bool End(int a,int b,int c,int d)</p><p&g
65、t;<b> {</b></p><p> if(a==9&&b==9&&c==9&&d==9)</p><p><b> {</b></p><p> return true;</p><p><b> }</b>&l
66、t;/p><p><b> else</b></p><p><b> {</b></p><p> return false;</p><p><b> }</b></p><p><b> }</b></p>
67、<p> bool Help(int a,int b,int c,int d,int &x1,int &x2,int &x3,int &x4,int &y1,int &y2,int &y3,int &y4)</p><p><b> {</b></p><p> if(a==8&
68、&b==8&&c==8&&d==8)</p><p><b> {</b></p><p> if(x1) cout<<"您的第1位數(shù)字和位置均不對"<<endl;</p><p> if(x2) cout<<"您的第2位數(shù)字和位置均
69、不對"<<endl;</p><p> if(x3) cout<<"您的第3位數(shù)字和位置均不對"<<endl;</p><p> if(x4) cout<<"您的第4位數(shù)字和位置均不對"<<endl;</p><p> if(y1) cout<&
70、lt;"您的第1位數(shù)字猜對,但位置不對"<<endl;</p><p> if(y2) cout<<"您的第2位數(shù)字猜對,但位置不對"<<endl;</p><p> if(y3) cout<<"您的第3位數(shù)字猜對,但位置不對"<<endl;</p>&
71、lt;p> if(y4) cout<<"您的第4位數(shù)字猜對,但位置不對"<<endl;</p><p> if(!(x1||x2||x3||x4||y1||y2||y3||y4))</p><p> cout<<"您輸入的位置與數(shù)字均未猜對"<<endl;</p><p&
72、gt; return true;</p><p><b> }</b></p><p><b> else</b></p><p> return false;</p><p><b> }</b></p><p> bool Manage(
73、int a,int b,int c,int d,int iComA,int iComB,int iComC,int iComD)</p><p><b> {</b></p><p> int iPasswd;</p><p> if(a==7&&b==7&&c==7&&d==7)</
74、p><p><b> {</b></p><p> cout <<"請輸入密碼:"<<endl;</p><p> scanf("%d",&iPasswd);</p><p> if(iPasswd==1234)</p><p
75、><b> {</b></p><p> cout<<"正確的數(shù)字為"<<iComA<<iComB<<iComC<<iComD<<endl;</p><p><b> }</b></p><p> else{cout&
76、lt;<"密碼錯(cuò)誤"<<endl;}</p><p> return true;</p><p><b> }</b></p><p> else {return false;}</p><p><b> }</b></p><p&g
77、t; void ReadMark()</p><p><b> {</b></p><p> ifstream infile;</p><p> infile.open("Game.dat",ios::in);</p><p> if(infile) infile>>mark1&
78、gt;>mark2>>mark3; //輸出前三名</p><p> cout<<"****************游戲金榜****************"<<endl;</p><p> cout<<"**第1名"<<mark1<<endl<<&quo
79、t;**第2名"<<mark2<<endl<<"**第3名"<<mark3<<endl;</p><p> infile.close();</p><p><b> }</b></p><p> void rank()</p><
80、p><b> {</b></p><p> if(nCount>=mark1)</p><p><b> {</b></p><p> mark3=mark2;</p><p> mark2=mark1;</p><p> mark1=nCount;&
81、lt;/p><p><b> }</b></p><p> else if(nCount>=mark2)</p><p><b> {</b></p><p> mark3=mark2;</p><p> mark2=nCount;</p><
82、p><b> }</b></p><p> else if(nCount>=mark3)</p><p> mark3=nCount;</p><p> ofstream outfile;</p><p> outfile.open("Game.dat",ios::out);&l
83、t;/p><p> outfile<<mark1<<"\n"<<mark2<<"\n"<<mark3<<"\n";</p><p> outfile.close();</p><p><b> }</b><
84、/p><p> void TextX(int iHisA,int iHisB,int iHisC,int iHisD,int iComA,int iComB,int iComC,int iComD,int &x1,int &x2,int &x3,int &x4)</p><p><b> {</b></p><p&g
85、t; if(iHisA==iComA) x1++; //第一位的數(shù)字判斷</p><p> if(iHisB==iComB) x2++;</p><p> if(iHisC==iComC) x3++;</p><p> if(iHisD==iComD) x4++;</p><p><b> }</b><
86、/p><p> void TextY(int iHisA,int iHisB,int iHisC,int iHisD,int iComA,int iComB,int iComC,int iComD,int &y1,int &y2,int &y3,int &y4)</p><p><b> {</b></p><p&g
87、t; if(iHisA==iComB||iHisA==iComC||iHisA==iComD) y1++; //第一位的位置判斷</p><p> if(iHisB==iComA||iHisB==iComC||iHisB==iComD) y2++;</p><p> if(iHisC==iComA||iHisC==iComB||iHisD==iComD) y3++;</p&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 猜單詞游戲c++課程設(shè)計(jì)報(bào)告
- c++猜單詞課程設(shè)計(jì)--——猜單詞游戲
- c語言課程設(shè)計(jì)--猜數(shù)游戲
- java課程設(shè)計(jì)-猜數(shù)游戲課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)報(bào)告--坦克游戲
- c語言課程設(shè)計(jì)---猜數(shù)字游戲報(bào)告
- c++課程設(shè)計(jì)-教學(xué)游戲
- c語言課程設(shè)計(jì)----猜字游戲
- c語言課程設(shè)計(jì)--猜數(shù)字游戲
- c語言課程設(shè)計(jì)--猜數(shù)字游戲
- 猜數(shù)字游戲課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告--猜數(shù)字游戲
- 有理數(shù)運(yùn)算c++課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)拼圖游戲
- c語言程序課程設(shè)計(jì)-猜數(shù)字游戲
- c++課程設(shè)計(jì)報(bào)告
- c++剪刀石頭布游戲課程設(shè)計(jì)
- c++剪刀石頭布游戲課程設(shè)計(jì)
- c語言課程設(shè)計(jì)---猜數(shù)字游戲姚成
- c++課程設(shè)計(jì)---吃豆子游戲程序
評論
0/150
提交評論