版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 信息工程學(xué)院</b></p><p> 《 C語言程序設(shè)計(jì) 》</p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 題 目: 俄羅斯方塊 </p><p> 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) </
2、p><p> 班 級(jí): </p><p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師: </p><p> 時(shí) 間:2013年6月
3、17日至2013年6月28日 </p><p><b> 摘 要</b></p><p> 俄羅斯方塊(Tetris, 俄文:Тетрис)是一款風(fēng)靡全球的電視掌上游戲機(jī)游戲,它由俄羅斯人阿列克謝?帕基特諾夫發(fā)明,故得此名。俄羅斯方塊的基本規(guī)則是移動(dòng)、旋轉(zhuǎn)和擺放游戲自動(dòng)輸出的各種方塊,使之排列成完整的一行或多行并且消除得分。
4、由于上手簡單、老少皆宜,從而家喻戶曉,風(fēng)靡世界。</p><p> 原本是前蘇聯(lián)科學(xué)家阿列克謝?帕基特諾夫所開發(fā)的教育用軟件,之后開始提供授權(quán)給各個(gè)游戲公司,造成各平臺(tái)上軟件大量發(fā)行的現(xiàn)象。</p><p> 由于俄羅斯方塊具有的數(shù)學(xué)性、動(dòng)態(tài)性與知名度,也經(jīng)常拿來作為游戲程序設(shè)計(jì)的練習(xí)題材。</p><p> 俄羅斯方塊曾經(jīng)造成的轟動(dòng)與造成的經(jīng)濟(jì)價(jià)值可以說是游
5、戲史上的一件大事,它看似簡單但卻變化無窮,令人上癮。相信大多數(shù)用戶都還記得為它癡迷得茶不思飯不想的那個(gè)俄羅斯方塊時(shí)代。</p><p> 俄羅斯方塊上手極其簡單,但是要熟練地掌握其中的操作與擺放技巧,難度卻不低。作為家喻戶曉老少皆宜的大眾游戲,其普及程度可以說是史上任何一款游戲都無法相比的。</p><p> 關(guān)鍵字:經(jīng)典 俄羅斯方塊 游戲 </p><p>&
6、lt;b> 目錄</b></p><p> 摘要錯(cuò)誤!未定義書簽。</p><p><b> 目錄1</b></p><p> 第一章 課程設(shè)計(jì)的目的2</p><p> 第二章 設(shè)計(jì)方案的論證3-4</p><p> 第三章 設(shè)計(jì)實(shí)現(xiàn)過程5</p&g
7、t;<p> 第四章 調(diào)試運(yùn)行及結(jié)果分析6-7</p><p> 第五章 測試及問題探討8</p><p> 第六章 課設(shè)總結(jié)及體會(huì)9</p><p><b> 第七章 致謝10</b></p><p> 第八章 參考文獻(xiàn)11</p><p> 第九章 附錄1
8、2-36</p><p> 第一章 課程設(shè)計(jì)目的</p><p> 俄羅斯方塊家喻戶曉,他能動(dòng)態(tài)進(jìn)行顯示和判斷方塊位置,能對(duì)程序的綜合設(shè)計(jì)有更深入的了解,同時(shí)對(duì)程序的綜合開發(fā),創(chuàng)新了思路,增長了開發(fā)經(jīng)驗(yàn)。</p><p> 俄羅斯流傳范圍較廣,游戲體驗(yàn)也比較豐富,這對(duì)開發(fā)來說增加了開發(fā)信心,俄羅斯游戲考驗(yàn)人的反應(yīng)應(yīng)變能力,對(duì)其開發(fā)能深入了解開發(fā)者思想,體會(huì)開發(fā)
9、者心得。對(duì)于這樣經(jīng)典的創(chuàng)造于在創(chuàng)造都是非常好的學(xué)習(xí)機(jī)會(huì)。對(duì)程序設(shè)計(jì)初學(xué)者能更好的整合綜合開發(fā)能力,對(duì)過去所學(xué)的零散的知識(shí)匯總。對(duì)開發(fā)者耐心,細(xì)心程度都有很大提升。</p><p> 在開發(fā)的過程中也能對(duì)以往玩過的各個(gè)版本的俄羅斯方塊能取長補(bǔ)短,這是開發(fā)其它小程序很難獲得的。</p><p> 第二章 設(shè)計(jì)方案的論證</p><p> 該程序采用數(shù)組與圖形顯示相
10、結(jié)合的辦法,數(shù)組用來進(jìn)行方塊位置判斷,圖形部分則根據(jù)數(shù)組所包含的數(shù)據(jù)進(jìn)行顯示,使程序生動(dòng),更具有可玩性。 </p><p><b> 判斷函數(shù)</b></p><p> 利用該函數(shù)可以判斷是否滿足消除和分?jǐn)?shù)判斷要求</p><p><b> 主函數(shù)</b></p><p> 主函數(shù)里面負(fù)責(zé)圖
11、形驅(qū)動(dòng)初始化、分?jǐn)?shù)、及隨機(jī)函數(shù)和清除函數(shù)和顯示函數(shù)和鍵盤緩沖區(qū)清除和全局顯示函數(shù)初始化化</p><p> 第三章 設(shè)計(jì)實(shí)現(xiàn)過程</p><p> 設(shè)計(jì)首先對(duì)游戲UI進(jìn)行的草圖的繪制,設(shè)計(jì)出游戲UI的大小和方位。通過合理的設(shè)置游戲UI界面,會(huì)給游戲體驗(yàn)著帶來更加愉悅的游戲體驗(yàn),并留下深刻的印象。UI初步繪制完成之后就是結(jié)構(gòu)化程序比較重要的一步了,那就是算法的合理選擇,一個(gè)程序的好壞不能
12、單單對(duì)其UI的評(píng)價(jià),而是算法是否合理,程序資源調(diào)配時(shí)否達(dá)到最優(yōu)化的程度等。本程序采用數(shù)組與UI界面相結(jié)合的方法進(jìn)行游戲規(guī)則判斷。由于采用TC編譯平臺(tái)。不能提供豐富的預(yù)定義函數(shù)。所以所有函數(shù)除部分頭文件均由后期編寫。這樣一來相比使用方便的VC++編譯平臺(tái),更具有實(shí)際操作能力。更具有意義。但同時(shí)要犧牲開發(fā)效率。UI后期游戲中的繪制是根據(jù)數(shù)組中值的不斷變化而繪制。UI和算法均設(shè)計(jì)完畢后。便進(jìn)入了最后的調(diào)試階段。在調(diào)試階段,通過對(duì)程序的調(diào)試,發(fā)
13、現(xiàn)了很多嚴(yán)重的問題,經(jīng)過不計(jì)其數(shù)的修改,最后程序還是比較接近預(yù)期設(shè)計(jì)效果。由于設(shè)計(jì)能力有限 部分游戲功能沒有得以體現(xiàn)這是設(shè)計(jì)者表示比較遺憾的。在以后的學(xué)習(xí)中會(huì)不斷完善,謝謝。</p><p> 第四章 調(diào)試運(yùn)行及結(jié)果分析</p><p> 游戲加載界面
14、160;
15、 </p><p> 該界面可以
16、給玩家一定準(zhǔn)備時(shí)間,做好一定的緩沖,不會(huì)讓玩家措手不及</p><p><b> 游戲加載完成</b></p><p><b> 游戲運(yùn)行界面</b></p><p> 結(jié)果接近預(yù)期效果,由于開發(fā)時(shí)間緊張,方塊旋轉(zhuǎn)函數(shù)沒有涉及,所以降低了游戲的可玩性。這點(diǎn)比較遺憾。TC下無法輸出中文,所以所有提示都采用英文,這一點(diǎn)也
17、是比較遺憾。</p><p> 第五章 測試及問題探討</p><p> 測試發(fā)現(xiàn),游戲運(yùn)行流暢度不是很完美,因?yàn)樗捎玫难訒r(shí)函數(shù)不是很好,所以運(yùn)行起來有卡頓延時(shí)現(xiàn)象。發(fā)現(xiàn)問題有方塊穿越邊界的情況,這點(diǎn)后期對(duì)判斷值左、右、下均增加了5處判斷值,與先期的一處判斷值相比,能夠早期判斷,由于穿越邊界主要是由于移動(dòng)按鍵造成的,按鍵函數(shù)下每調(diào)用一次為多增加30像素值的移動(dòng),加上本次的10像素值,
18、一共為40像素值,所以,采用50個(gè)像素值進(jìn)行判斷比較穩(wěn)定,雖然說采用比5處更多的判斷值會(huì)更加穩(wěn)定,但是會(huì)減慢游戲的運(yùn)行速度,所以采用50像素值進(jìn)行判斷。同時(shí)左右移動(dòng)有時(shí)也會(huì)存在穿越其他方塊的情況,這點(diǎn)只要在正常延時(shí)時(shí)不會(huì)存在,由于TC下暫停時(shí)間過長,再次繼續(xù)有一段時(shí)間延遲會(huì)改變,所以左右穿越方塊只會(huì)在這段時(shí)間出現(xiàn),如果有機(jī)會(huì)日后會(huì)完善。</p><p> 第六章 課設(shè)總結(jié)與體會(huì)</p><p
19、> 課設(shè)期間時(shí)間充分利用,分配合理,完成度接近95%,總體滿意。</p><p> 通過課程設(shè)計(jì)體驗(yàn)到了軟件開發(fā)的過程,從設(shè)計(jì)到完成,完整的開發(fā)過程。</p><p> 同時(shí)對(duì)所涉及的各個(gè)學(xué)科有了更深入的了解。增加了實(shí)踐經(jīng)驗(yàn)。為今后的其他平臺(tái)開發(fā)打下了堅(jiān)實(shí)的基礎(chǔ),同時(shí)也為即將結(jié)束的大一生活留下了美好的一抹油彩,</p><p> 然大一生活更加值得懷念
20、。</p><p><b> 第七章 致謝</b></p><p> 在此特別感謝幫助和支持開發(fā)工作的相關(guān)人員,感謝吉林工程技術(shù)師范學(xué)院所提供的場地和環(huán)境。感謝百度搜索引擎提供的相關(guān)數(shù)據(jù)搜索,感謝zz全體成員。感謝相關(guān)書籍和文獻(xiàn)的撰寫人員和出版發(fā)行社。感謝TC該編譯平臺(tái)。感謝Microsoft所有相關(guān)支持軟件。在此特別鳴謝以上公司和個(gè)人。</p>&
21、lt;p><b> 第八章 參考文獻(xiàn)</b></p><p> [1] C語言程序設(shè)計(jì) 劉國成 科學(xué)出版社</p><p> [2]C程序設(shè)計(jì) 譚浩強(qiáng) 1991年7月</p><p> [3]從問題到程序 裘宗燕 北京大學(xué)出版社</p><p> [3]計(jì)算機(jī)二級(jí)教程 劉瑞挺 南開大學(xué)
22、出版社</p><p> [4]C語言程序設(shè)計(jì)基礎(chǔ)教程 陳朔鷹,兵器工業(yè)出版社[5] C語言程序設(shè)計(jì) 姜仲秋 南京大學(xué)出版社</p><p><b> 附錄</b></p><p> #include<stdio.h></p><p> #include<bios.h></
23、p><p> #include<conio.h></p><p> #include<dos.h></p><p> #include<graphics.h></p><p> #include<math.h></p><p> #define ha 25 /*
24、kuan su chang liang */</p><p> #define gs 150+ha*10+30 /*cheng ji xian shi pin yi liang*/</p><p> #define hh 350 /*^^*/</p><p> int xb11,xb12,xb21,xb22,xb31,xb32,xb41
25、,xb42;</p><p> int qdx1,qdy1,qdx2,qdy2,qdx3,qdy3,qdx4,qdy4;</p><p> int ui=150,bi=40,mbh=0,jz=2,key,stop=0,y11;</p><p> int sz[40][ha]={{0}},qckey,n;</p><p> int bx
26、h=0,sxh=0,zfs=0;</p><p> int ns[4]={0,0,0,0};</p><p><b> void kc()</b></p><p><b> {</b></p><p> int i1,j1=0,k1;</p><p> int s2
27、11[10]={100,100,200,100,200,200,100,200,100,100};</p><p> int sd211[14]={450,100,410,200,450,200,350,360,420,220,380,220,450,100};</p><p><b> sleep(1);</b></p><p> fo
28、r(k1=0;k1<320;k1++)</p><p><b> {</b></p><p> j1++;i1+=6;</p><p> setcolor(i1);</p><p> setfillstyle(i1,i1);</p><p> drawpoly(8,sd211);&
29、lt;/p><p> setfillstyle(1,i1); /*kai chang dong hua jia zai*/</p><p> floodfill(420,210,i1);</p><p> setfillstyle(i1,i1);</p><p> drawpoly(5,s211);</p>
30、<p> floodfill(180,180,i1);</p><p> setcolor(2);</p><p> setlinestyle(0,2,3);</p><p> line(150,450,150+j1,450);</p><p> outtextxy(300,435,"loding")
31、;</p><p><b> if(i1>15)</b></p><p><b> {i1=0;}</b></p><p> delay(1000);</p><p><b> }</b></p><p> settextstyle(0,
32、0,3);</p><p> outtextxy(480,430,"Go");</p><p><b> sleep(2);</b></p><p> cleardevice();</p><p><b> }</b></p><p><b&
33、gt; void sj()</b></p><p><b> {</b></p><p> srand(time(0));</p><p> mbh=(rand()%5);</p><p> ui=150+(rand()%(ha-6))*10;</p><p><b&g
34、t; }</b></p><p> /*wei fang kuai ti gong chu shi wei zhi de sui ji zhi */</p><p> /*wei fang kuai zhong lei ti gong chu shi zhi*/</p><p> void show()</p><p>&
35、lt;b> {</b></p><p> int iii,j=10;</p><p> for(iii=0;iii<4;iii++) /*you yu TC bu neng zheng chang xian shi shu zi*/</p><p> { /*gai han shu
36、ti gong de fen cheng ji suo xu shu zi*/</p><p> switch(ns[iii])</p><p><b> {</b></p><p><b> case 0:</b></p><p> setlinestyle(0,2,0x0f);</
37、p><p> line(gs+3+j,3+hh,gs+3+j,21+hh);</p><p> line(6+j+gs,hh+4,16+j+gs,4+hh);</p><p> line(19+j+gs,hh+3,19+j+gs,21+hh);</p><p> line(3+j+gs,hh+24,3+j+gs,42+hh);</p
38、><p> line(19+j+gs,hh+24,19+j+gs,42+hh);</p><p> line(6+j+gs,hh+41,16+j+gs,41+hh);</p><p><b> break;</b></p><p><b> case 1:</b></p><
39、p> setlinestyle(0,2,0x0f);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+21);</p><p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p><p><b> break;</b></p><p><b>
40、; case 2:</b></p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+6+j,hh+4,gs+16+j,hh+4);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+21);</p><p> line(gs+6+j,hh+23,gs+
41、16+j,hh+23);</p><p> line(gs+3+j,hh+24,gs+3+j,hh+42);</p><p> line(gs+6+j,hh+41,gs+16+j,hh+41);</p><p><b> break;</b></p><p><b> case 3:</b>
42、</p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+6+j,hh+4,gs+16+j,hh+4);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+21);</p><p> line(gs+6+j,hh+23,gs+16+j,hh+23);</p&g
43、t;<p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p><p> line(gs+6+j,hh+41,gs+16+j,hh+41);</p><p><b> break;</b></p><p><b> case 4:</b></p><p&
44、gt; setlinestyle(0,2,0x0f);</p><p> line(gs+3+j,hh+3,gs+3+j,hh+21);</p><p> line(gs+6+j,hh+23,gs+16+j,hh+23);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+21);</p><p> lin
45、e(gs+19+j,hh+24,gs+19+j,hh+42);</p><p><b> break;</b></p><p><b> case 5:</b></p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+6+j,hh+4,gs+16+
46、j,hh+4);</p><p> line(gs+3+j,hh+3,gs+3+j,hh+21);</p><p> line(gs+6+j,hh+23,gs+16+j,hh+23);</p><p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p><p> line(gs+6+j,hh+41,gs+1
47、6+j,hh+41);</p><p><b> break;</b></p><p><b> case 6:</b></p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+6+j,hh+4,gs+16+j,hh+4);</p>
48、<p> line(gs+3+j,hh+3,gs+3+j,hh+21);</p><p> line(gs+6+j,hh+23,gs+16+j,hh+23);</p><p> line(gs+3+j,hh+24,gs+3+j,hh+42);</p><p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p>
49、<p> line(gs+6+j,hh+41,gs+16+j,hh+41);</p><p><b> break;</b></p><p><b> case 7:</b></p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+
50、6+j,hh+4,gs+16+j,hh+4);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+21);</p><p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p><p><b> break;</b></p><p><b> case
51、 8:</b></p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+3+j,hh+3,gs+3+j,hh+21);</p><p> line(gs+6+j,hh+4,gs+16+j,hh+4);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+2
52、1);</p><p> line(gs+6+j,hh+23,gs+16+j,hh+23);</p><p> line(gs+3+j,hh+24,gs+3+j,hh+42);</p><p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p><p> line(gs+6+j,hh+41,gs+16+j,
53、hh+41);</p><p><b> break;</b></p><p><b> case 9:</b></p><p> setlinestyle(0,2,0x0f);</p><p> line(gs+3+j,hh+3,gs+3+j,hh+21);</p><
54、p> line(gs+6+j,hh+4,gs+16+j,hh+4);</p><p> line(gs+19+j,hh+3,gs+19+j,hh+21);</p><p> line(gs+6+j,hh+23,gs+16+j,hh+23);</p><p> line(gs+19+j,hh+24,gs+19+j,hh+42);</p>&
55、lt;p> line(gs+6+j,hh+41,gs+16+j,hh+41);</p><p><b> break;</b></p><p> default: break; /*shu xian han shu */</p><p><b> }</b></p>&
56、lt;p><b> j+=30;</b></p><p><b> }</b></p><p><b> }</b></p><p> void displayer()</p><p><b> {</b></p><p
57、> int i,j,x,y;</p><p> for(i=0;i<40;i++)</p><p><b> {</b></p><p> for(j=0;j<ha;j++)</p><p><b> {</b></p><p> if(sz[i
58、][j]==1)</p><p> {x=150+j*10;</p><p> y=40+i*10;</p><p> bar(x,y,x+10,y+10);}</p><p><b> }</b></p><p><b> }</b></p><
59、;p> }/*gai han shu wei zheng ti xian shi han shu */</p><p><b> void qc()</b></p><p><b> {</b></p><p><b> int i,j;</b></p><p>
60、<b> ++bxh;</b></p><p> for(i=39;i>0;i--)</p><p><b> {</b></p><p> for(j=0;j<ha;j++)</p><p><b> {</b></p><p>
61、 sz[i][j]=sz[i-1][j];</p><p><b> }</b></p><p><b> }</b></p><p> } /*gai han shu wei zheng ti yi wei han shu */</p><p> void clear()</p&g
62、t;<p><b> {</b></p><p> int i,j,k=0;</p><p> for(i=39;i>=0;i--)</p><p><b> {</b></p><p> for(j=0;j<ha;j++)</p><p>
63、;<b> {</b></p><p> if(sz[i][j]==1)</p><p><b> {k++;}</b></p><p><b> }</b></p><p><b> if(k==ha)</b></p><p
64、><b> {</b></p><p><b> qckey=1;</b></p><p><b> k=0;</b></p><p><b> i=39;</b></p><p> delay(100000);</p>&l
65、t;p><b> qc();</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {k=0;}</b></p><p><b> }</b></p&
66、gt;<p> }/*gai han shu wei qing chu zheng hang fang kuai */</p><p><b> int pd()</b></p><p><b> {</b></p><p> if(sz[xb12/10-4][xb11/10-15]==1</p
67、><p> ||sz[xb22/10-4][xb21/10-15]==1</p><p> ||sz[xb32/10-4][xb31/10-15]==1</p><p> ||sz[xb42/10-4][xb41/10-15]==1</p><p> ||xb12==440||xb22==440||xb32==440||xb42==440
68、)</p><p><b> {</b></p><p> sz[qdy1/10-4][qdx1/10-15]=1;</p><p> sz[qdy2/10-4][qdx2/10-15]=1;</p><p> sz[qdy3/10-4][qdx3/10-15]=1;</p><p>
69、sz[qdy4/10-4][qdx4/10-15]=1;</p><p> xb12=0;xb22=0;xb32=0;xb42=0;</p><p><b> stop=1;</b></p><p><b> zfs+=2;</b></p><p><b> clear();<
70、;/b></p><p><b> }</b></p><p> } /*gai han shu wei pan duan han shu */</p><p><b> void bk()</b></p><p><b> {</b></p>&l
71、t;p> setcolor(2);</p><p> setlinestyle(0,2,3);</p><p> line(147,37,153+ha*10,37);</p><p> line(147,37,147,443);</p><p> line(153+ha*10,37,153+ha*10,443);</p&
72、gt;<p> line(147,443,153+ha*10,443);</p><p> } /*gai han shu wei cheng xu bian kuang han shu */</p><p> int zx(int y,int z)</p><p><b> {</b></p><p&
73、gt; int i=z/10-4,k=0;</p><p> for(;i<40;i++)</p><p><b> {</b></p><p> if(sz[i][y/10-15]==0)</p><p><b> k++;</b></p><p><
74、b> }</b></p><p><b> return k;</b></p><p> } /*gai han shu wei ji fen han shu ti gong chu shi zhi*/</p><p> void text()</p><p><b> {</
75、b></p><p> setcolor(0x0f);</p><p> settextstyle(0,0,3);</p><p> outtextxy(437,300,"score");</p><p> settextstyle(0,0,2);</p><p> setcolor
76、(0x0e);</p><p> outtextxy(430,40,"ESC~EXIT");</p><p> outtextxy(430,60,"RIGHT~D");</p><p> outtextxy(430,80,"LEFT~A");</p><p> outtext
77、xy(430,100,"DOWN~S");</p><p> setcolor(2);</p><p> settextstyle(0,1,2);</p><p> outtextxy(140,90,"Tetris");</p><p> } /*gai han shu shu chi ti s
78、hi wen zi*/</p><p> void display() /*gai han shu wei fang kuai yi dong han shu*/</p><p><b> {</b></p><p> int x11=0,x21=0,y21=0,x12=0,y12=0,x22=0,y22=0,x13=0,
79、y13=0,x23=0,y23=0;</p><p> int x14=0,y14=0,x24=0,y24=0;</p><p> int x=10,y=12,i,m,ww;</p><p> /*fang kuai xian shi */</p><p><b> pd();</b></p>&l
80、t;p><b> bi=40;</b></p><p> switch(mbh)</p><p><b> {</b></p><p><b> case 0:</b></p><p> for(n=1;n<38;n++)</p><p
81、><b> {</b></p><p> key=bioskey(1);</p><p> if(key==283) /*shi fou an ESC*/</p><p> {exit(0);}</p><p> bk(); pd();</p><p> show
82、();text(); /*xian shi wai guan*/</p><p> if(stop==1) /*ru guo man zu xiao chu tiao jian ji tiao chu */</p><p><b> {break;}</b></p><p> for(;kbhit();)</p>
83、<p> { /*an jian jian ce duan*/</p><p> if(kbhit()) /*you yu mei zhong fang kuai ge you bu tong*/</p><p> { /*suo yi bu zuo dan du
84、han shu */</p><p> key=bioskey(0);</p><p> if(key==7777</p><p> &&sz[y11/10-4][x11/10-16]==0</p><p> &&sz[y12/10-4][x12/10-16]==0</p><p&g
85、t; &&sz[y14/10-4][x14/10-16]==0)</p><p><b> {</b></p><p> if(ui>150)</p><p><b> {ui-=10;}</b></p><p><b> }</b></p
86、><p> if(key==8292</p><p> &&sz[y11/10-3][x11/10-14]==0</p><p> &&sz[y13/10-3][x13/10-14]==0</p><p> &&sz[y14/10-3][x14/10-14]==0)</p>&
87、lt;p><b> {</b></p><p> if(ui<130+ha*10)</p><p><b> {ui+=10;}</b></p><p><b> }</b></p><p> if(key==8051)</p><p&
88、gt;<b> {</b></p><p> if((bi>400)</p><p> &&(sz[xb12/10-4][ui/10]==0)</p><p> &&(sz[xb22/10-4][ui/10]==0)</p><p> &&(sz[xb32/
89、10-4][ui/10]==0)</p><p> &&(sz[xb42/10-4][ui/10]==0))</p><p><b> {break;}</b></p><p><b> if(</b></p><p> sz[y22/10+1][x12/10-15]==1&
90、lt;/p><p> ||sz[y24/10+1][x14/10-15]==1</p><p> ||sz[y22/10][x12/10-15]==1</p><p> ||sz[y24/10][x14/10-15]==1</p><p> ||sz[y22/10-1][x12/10-15]==1</p><p>
91、 ||sz[y24/10-1][x14/10-15]==1</p><p> ||sz[y22/10-2][x12/10-15]==1</p><p> ||sz[y24/10-2][x14/10-15]==1</p><p> ||sz[y22/10-3][x12/10-15]==1</p><p> ||sz[y24/10-3]
92、[x12/10-15]==1)</p><p><b> {break;}</b></p><p> if(y11<360)</p><p><b> { ww++;</b></p><p><b> bi+=30;</b></p><p&
93、gt;<b> if(ww>1)</b></p><p><b> {</b></p><p><b> ww=0;</b></p><p><b> break;}</b></p><p><b> }</b><
94、;/p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> displayer(); /*diao yong xian shi */</p><p> x11=ui;y11=b
95、i+n*10;x21=x11+10;y21=y11+10;</p><p> x12=x11;y12=y11+10;x22=x21;y22=y21+10; /*wei fang kuai chu shi zhi fu zhi*/</p><p> x13=x21;y13=y21;x23=x21+10;y23=y21+10;/*you yu mei zhong fang kuai bu
96、 tong*/</p><p> x14=x22;y14=y22;x24=x22+10;y24=y22+10;/*suo yi bu zuo dan du han shu */</p><p> setfillstyle(2,3); /*she zhi fang kuai yan se he tian chong fang shi*/</p><p> bar
97、(x11,y11,x21,y21);</p><p> bar(x12,y12,x22,y22); /*hui zhi fang kuai */</p><p> bar(x13,y13,x23,y23);</p><p> bar(x14,y14,x24,y24);</p><p><b> /**/</b>
98、</p><p> xb11=x12;xb12=y12+10;</p><p> xb21=x22;xb22=y22; /*zui di dian */</p><p> xb31=x14;xb32=y24; /* bian jie pan duan */</p><p> xb41=x14;xb42=y24;<
99、/p><p> qdx1=x11;qdy1=y11;</p><p> qdx2=x12;qdy2=y12; /*zui gao su zhu fu zhi dian*/</p><p> qdx3=x13;qdy3=y13; /* tiao jian pan duan*/</p><p> qdx4=x14;qdy4=
100、y14;</p><p> sleep(1); /*sui mian han shu yan chi*/</p><p> cleardevice(); /*qing chu quan bu yi hui zhi tu xing*/</p><p><b> }</b></p><p&g
101、t; break; /* zai ci tiao chu*/</p><p> /*!!!!!!!!!!!!!*/</p><p> /*!!! dao ci han fang kuai 0 jie shu */</p><p> /*!!! you yu yi xia mo kuai jun jie gou xiang tong*/</p>
102、;<p> /*!!! bu zai zuo jie shi biao zhu */</p><p> /*!!! ru you qi tai bu tong zai ling xing biao zhu*/</p><p> /*!!! yi shang biao zhu wei xue sheng liy yang biao zhu */</p>&l
103、t;p> /*!!! yi xia ge shi ye bu zuo te bie xiu shi*/</p><p> /*!!! xie xie*/</p><p> /*!!! QQ:763397547*/</p><p> /*!!! zai ci te bie gan xie nan qin 201 quan ti cheng yuan*/&
104、lt;/p><p><b> case 1:</b></p><p> for(n=1;n<38;n++)</p><p><b> {</b></p><p> key=bioskey(1);</p><p> if(key==283)</p>&
105、lt;p> {exit(0);}</p><p> bk();pd();</p><p> show();text();</p><p> if(stop==1)</p><p><b> { break;}</b></p><p> for(;kbhit();)</p&g
106、t;<p><b> {</b></p><p> if(kbhit())</p><p><b> {</b></p><p> key=bioskey(0);</p><p> if(key==7777)</p><p><b> {&
107、lt;/b></p><p><b> if(ui>150</b></p><p> &&sz[y11/10-3][x11/10-16]==0</p><p> &&sz[y12/10-3][x12/10-16]==0</p><p> &&sz[y13
108、/10-3][x13/10-16]==0</p><p> &&sz[y14/10-3][x14/10-16]==0)</p><p><b> {ui-=10;}</b></p><p><b> }</b></p><p> if(key==8292</p>
109、<p> &&sz[y11/10-3][x11/10-15]==0</p><p> &&sz[y12/10-3][x22/10-15]==0</p><p> &&sz[y22/10-3][x22/10-15]==0</p><p> &&sz[y23/10-3][x23/10-1
110、5]==0 )</p><p><b> {</b></p><p> if(ui<140+ha*10)</p><p><b> ui+=10;</b></p><p><b> }</b></p><p> if(key==8051
111、)</p><p><b> {</b></p><p> if((bi>350)</p><p> ||(sz[xb12/10-15][ui/10]==1)</p><p> ||(sz[xb22/10-15][ui/10]==1)</p><p> ||(sz[xb32/10-
112、15][ui/10]==1)</p><p> ||(sz[xb42/10-15][ui/10]==1))</p><p><b> {break;}</b></p><p><b> if(</b></p><p> sz[y14/10+2][x14/10-15]==1</p>
113、<p> ||sz[y14/10+1][x14/10-15]==1</p><p> ||sz[y14/10][x14/10-15]==1</p><p> ||sz[y14/10-1][x14/10-15]==1</p><p> ||sz[y14/10-2][x14/10-15]==1</p><p> ||sz[
114、y14/10-3][x14/10-15]==1)</p><p><b> { break;}</b></p><p> if(y11<340)</p><p><b> {</b></p><p><b> ww++;</b></p><p&
115、gt;<b> bi+=30;</b></p><p><b> if(ww>1)</b></p><p><b> {</b></p><p><b> ww=0;</b></p><p><b> break;}</b&
116、gt;</p><p><b> }</b></p><p><b> }}}</b></p><p> displayer();</p><p> x11=ui;y11=bi+n*10;x21=x11+10;y21=y11+10;</p><p> x12=x11
117、;y12=y11+10;x22=x12+10;y22=y12+10;</p><p> x13=x11;y13=y12+10;x23=x13+10;y23=y13+10;</p><p> x14=x11;y14=y13+10;x24=x14+10;y24=y14+10;</p><p> setfillstyle(2,6);</p><p
118、> bar(x11,y11,x21,y21);</p><p> bar(x12,y12,x22,y22);</p><p> bar(x13,y13,x23,y23);</p><p> bar(x14,y14,x24,y24);</p><p> xb11=x14;xb12=y24;</p><p>
119、; xb21=x14;xb22=y24;</p><p> xb31=x14;xb32=y24;</p><p> xb41=x14;xb42=y24;</p><p> qdx1=x11;qdy1=y11;</p><p> qdx2=x12;qdy2=y12;</p><p> qdx3=x13;qdy
120、3=y13;</p><p> qdx4=x14;qdy4=y14;</p><p><b> sleep(1);</b></p><p> cleardevice();}</p><p><b> case 2:</b></p><p> for(n=1;n<
121、;38;n++)</p><p><b> {</b></p><p> key=bioskey(1);</p><p> if(key==283)</p><p> { exit(0);}</p><p> bk(); pd();</p><p> show(
122、);text();</p><p> if(stop==1)</p><p><b> {break;}</b></p><p> for(;kbhit();)</p><p><b> {</b></p><p> if(kbhit())</p>&
123、lt;p><b> {</b></p><p> key=bioskey(0);</p><p> if(key==7777)</p><p><b> {</b></p><p><b> if(ui>140</b></p><p&g
124、t; &&sz[y11/10-3][x11/10-16]==0</p><p> &&sz[y12/10-3][x12/10-16]==0)</p><p> {ui-=10;}}</p><p> if(key==8292</p><p> &&sz[y11/10-3][x11/10
125、-14]==0</p><p> &&sz[y14/10-3][x14/10-14]==0)</p><p><b> {</b></p><p> if(ui<110+ha*10)</p><p><b> ui+=10;</b></p><p&g
126、t;<b> }</b></p><p> if(key==8051)</p><p><b> {</b></p><p> if((bi>340)</p><p> &&(sz[xb12/10-4][ui/10]==0)</p><p>
127、 &&(sz[xb22/10-4][ui/10]==0)</p><p> &&(sz[xb32/10-4][ui/10]==0)</p><p> &&(sz[xb42/10-4][ui/10]==0))</p><p><b> {break;}</b></p><p
128、> if( sz[y12/10+2][x12/10-15]==1</p><p> ||sz[y13/10+2][x13/10-15]==1</p><p> ||sz[y14/10+2][x14/10-15]==1</p><p> ||sz[y12/10+1][x12/10-15]==1</p><p> ||sz
129、[y13/10+1][x13/10-15]==1</p><p> ||sz[y14/10+1][x14/10-15]==1</p><p> ||sz[y12/10][x12/10-15]==1</p><p> ||sz[y13/10][x13/10-15]==1</p><p> ||sz[y14/10][x14/10-15]=
130、=1</p><p> ||sz[y12/10-1][x12/10-15]==1</p><p> ||sz[y13/10-1][x12/10-15]==1</p><p> ||sz[y14/10-1][x12/10-15]==1</p><p> ||sz[y12/10-2][x12/10-15]==1</p>&l
131、t;p> ||sz[y13/10-2][x12/10-15]==1</p><p> ||sz[y14/10-2][x12/10-15]==1)</p><p><b> {break;}</b></p><p> if(y11<360)</p><p><b> { ww++;<
132、/b></p><p><b> bi+=30;</b></p><p><b> if(ww>1)</b></p><p><b> {</b></p><p><b> ww=0;</b></p><p>&
133、lt;b> break;}</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p>
134、 displayer();</p><p> x11=ui+20;y11=bi+10+n*10;x21=x11+10;y21=y11+10;</p><p> x12=x21-20;y12=y21;x22=x12+10;y22=y12+10;</p><p> x13=x11;y13=y11+10;x23=x13+10;y23=y13+10;</p&g
135、t;<p> x14=x21;y14=y21;x24=x14+10;y24=y14+10;</p><p> setfillstyle(4,9);</p><p> bar(x11,y11,x21,y21);</p><p> bar(x12,y12,x22,y22);</p><p> bar(x13,y13,x23
136、,y23);</p><p> bar(x14,y14,x24,y24);</p><p> xb11=x12;xb12=y12+10;</p><p> xb21=x22;xb22=y22;</p><p> xb31=x14;xb32=y24;</p><p> xb41=x14;xb42=y24;<
137、;/p><p> qdx1=x11;qdy1=y11;</p><p> qdx2=x12;qdy2=y12;</p><p> qdx3=x13;qdy3=y13;</p><p> qdx4=x14;qdy4=y14;</p><p><b> sleep(1);</b></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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《c++俄羅斯方塊》課程設(shè)計(jì)--俄羅斯方塊
- 俄羅斯方塊課程設(shè)計(jì)報(bào)告
- 俄羅斯方塊課程設(shè)計(jì)
- 俄羅斯方塊課程設(shè)計(jì)
- 課程設(shè)計(jì)---俄羅斯方塊
- 俄羅斯方塊課程設(shè)計(jì)
- 俄羅斯方塊課程設(shè)計(jì)
- 課程設(shè)計(jì)--俄羅斯方塊設(shè)計(jì)報(bào)告
- 俄羅斯方塊課程設(shè)計(jì)
- 俄羅斯方塊課程設(shè)計(jì)
- 俄羅斯方塊課程設(shè)計(jì)
- 俄羅斯方塊編程課程設(shè)計(jì)報(bào)告
- 俄羅斯方塊游戲課程設(shè)計(jì)報(bào)告
- java課程設(shè)計(jì)報(bào)告-俄羅斯方塊
- c課程設(shè)計(jì)--俄羅斯方塊
- 簡單俄羅斯方塊課程設(shè)計(jì)
- java俄羅斯方塊課程設(shè)計(jì)
- 俄羅斯方塊課程設(shè)計(jì)論文
- arm課程設(shè)計(jì)俄羅斯方塊
- c語言課程設(shè)計(jì)報(bào)告-俄羅斯方塊
評(píng)論
0/150
提交評(píng)論