俄羅斯方塊實習(xí)報告.doc
《俄羅斯方塊實習(xí)報告.doc》由會員分享,可在線閱讀,更多相關(guān)《俄羅斯方塊實習(xí)報告.doc(19頁珍藏版)》請在裝配圖網(wǎng)上搜索。
西安財經(jīng)學(xué)院 實踐教學(xué)活動周實踐報告 姓 名: 學(xué) 號: 專 業(yè): 院 系: 本校指導(dǎo)教師: 完成日期: 2013 年8 月 31 日 西安財經(jīng)學(xué)院實驗實訓(xùn)教學(xué)管理中心 制 實踐報告名稱 小型游戲軟件設(shè)計與開發(fā) 實踐時間 2013年 07 月08 日至 2013 年07 月19 日 共 2 周 實踐地點 西安財經(jīng)學(xué)院 指導(dǎo)教師 職稱 講師 二級學(xué)院、系 信息學(xué)院、軟件工程系 實踐內(nèi)容(后附實踐報告) 實踐周關(guān)于小型游戲軟件設(shè)計與開發(fā)其中主要有編譯軟件,系統(tǒng)兼容性,和需求分析,系統(tǒng)設(shè)計,通過這些軟件設(shè)計我懂的了許多知識,也覺得軟件設(shè)計在我們生活中運用的重要性,也一定好好掌握C語言這門語言。在今后我也會更努力的學(xué)習(xí)有關(guān)軟件上的知識。 指 導(dǎo) 教 師 評 語 及成績 簽字(蓋章): 年 月 日 院系意見 簽字(蓋章): 年 月 日 小型游戲軟件設(shè)計與開發(fā) 隨著社會的發(fā)展,人們的生活日益加快,越來越多加入了全球化的世界。人們不在拘泥于戶外活動,戶外游戲,而此時一款可以隨時隨地娛樂的游戲成了必需品。在手機電腦不斷向人們襲來的社會,一款又好玩又娛樂性強的游戲橫空出世。這就是我們每個人熟悉的再也熟悉不過的游戲---貪吃蛇,貪吃蛇這款游戲簡單易行,操作方便,娛樂性強。該游戲給人們帶來了追逐的快感,以及成功后的滿足感,對于一直處于高壓下的現(xiàn)代人是很好的放松工具。該游戲使用的開發(fā)語言為C語言,使用TC2.0作為開發(fā)工具。貪吃蛇游戲背景: 蛇引誘夏娃吃了蘋果之后,就被貶為毒蟲,陰險的象征。 而蛇吃東西是整只動物吞進去的,大概在文藝復(fù)興的時候(好象是那個時候但是不確定)就有人發(fā)明的一種游戲,是現(xiàn)在貪吃蛇的前身。后來慢慢的發(fā)展就變成了今天的貪吃蛇了、現(xiàn)在貪吃蛇主要應(yīng)用于手機游戲。本文運用軟件工程思想、JAVA面向?qū)ο缶幊?、類的封裝、抽象類的使用(接口),游戲編碼規(guī)范遵循MVC模式,循序漸進實現(xiàn)貪吃蛇的相關(guān)功能。所以為了適應(yīng)時代需求,促進自己各方面的發(fā)展,使自己的暑假生活更加完善,我參加了這次小型游戲軟件的設(shè)計與開發(fā)的實踐。我的實踐內(nèi)容如下: 1.1關(guān)于編譯軟件 本程序采用Turbo C 2.0英文版本進行編譯。Turbo C 2.0是美國Borland 公司的產(chǎn)品,Borland公司是一家專門從事軟件開發(fā)、研制的大公司。該公司相繼推出了一套 Turbo系列軟件。 Turbo C 2.0介紹: Turbo C2.0不僅是一個快捷、高效的編譯程序,同時還有一個易學(xué)、易用的集成開發(fā)環(huán)境。使用Turbo C2.0無需獨立地編輯、編譯和連接程序,就能建立并運行C語言程序。因為這些功能都組合在Turbo 2.0的集成開發(fā)環(huán)境內(nèi),并且可以通過一個簡單的主屏幕使用這些功能。 基本配置要求: Turbo C 2.0可運行于IBM-PC系列微機,包括XT,AT及IBM 兼容機。此時要求DOS2.0或更高版本支持,并至少需要448K的RAM,可在任何彩、單色80列監(jiān)視器上運行。支持?jǐn)?shù)學(xué)協(xié)處理器芯片,也可進行浮點仿真,這將加快程序的執(zhí)行。 Turbo C 2.0的主要文件的簡單介紹: INSTALL.EXE 安裝程序文件 TC.EXE 集成編譯 TCINST.EXE 集成開發(fā)環(huán)境的配置設(shè)置程序。 TCHELP.TCH 幫助文件 THELP.COM 讀取TCHELP.TCH的駐留程序README 關(guān)于Turbo C的信息文件 TCCONFIG.EXE 配置文件轉(zhuǎn)換程序MAKE.EXE 項目管理工具TCC.EXE 命令行編譯TLINK.EXE Turbo C系列連接器TLIB.EXE Turbo C系列庫管理工具C0?. OBJ 不同模式啟動代碼C?.LIB 不同模式運行庫GRAPHICS.LIB 圖形庫EMU.LIB 8087仿真庫FP87.LIB 8087庫 *.H Turbo C頭文件 *.BGI 不同顯示器圖形驅(qū)動程序 *.C Turbo C例行程序(源文件) 其中:上面的?分別為:T Tiny(微型模式) 、S Small(小模式) 、C Compact(緊湊模式) 、M Medium(中型模式) 、L Large(大模式)H Huge(巨大模式 1.2 C語言簡介 C語言發(fā)展沿革: C語言是國際上廣泛流行且很有發(fā)展前途的計算機高級語言,不僅用來編寫應(yīng)用軟件,也用來編寫系統(tǒng)軟件。 在C語言誕生以前,操作系統(tǒng)及其他系統(tǒng)軟件主要是用匯編語言實現(xiàn)的。由于匯編語言程序設(shè)計依賴于計算機硬件,其可讀性和可移植性都很差,而一般的高級語言又難以實現(xiàn)對計算機硬件的直接操作,因此人們需要一種兼有匯編語言和高級語言特性的語言。C語言就是在這種環(huán)境下產(chǎn)生的。 它最早是由Dennis Richie于1973年設(shè)計并實現(xiàn)。它的產(chǎn)生同UNIX系統(tǒng)之間具有非常密切的聯(lián)系——C語言是在UNIX系統(tǒng)上開發(fā)的。而無論UNIX系統(tǒng)本身還是其上運行的大部分程序,都是用C語言編寫實現(xiàn)。同時,它同樣適合于編寫不同領(lǐng)域中的大多數(shù)程序。C語言已經(jīng)成為全球程序員的公共語言,并且由此產(chǎn)生了當(dāng)前兩個主流的語言C++和Java——它們都建立在C語言的語法和基本結(jié)構(gòu)的基礎(chǔ)上,而且現(xiàn)在世界上的許多軟件都是在C語言及其衍生的各種語言的基礎(chǔ)上開發(fā)而成。 目前,在微機上廣泛使用的C語言編譯系統(tǒng)有Turbo C、Borland C++、Microsoft Visual C++等。雖然它們的基本部分都是相同的,但還是有一些差異。 C語言特點: C語言是一種由ALGOL語言派生和發(fā)展起來通用流行的程序設(shè)計語言,許多大型軟件均采用C語言編寫,它同時具有匯編語言和高級語言的特性。具體地說,它具有如下特點: 語言簡潔,結(jié)構(gòu)緊湊,使用方便、靈活。C語言一共只有32個關(guān)鍵字和9條控制語句,且源程序書寫格式自由。 運算符極其豐富,數(shù)據(jù)處理能力強。C語言一共有45種運算符,它把括號、賦值符號、強制類型轉(zhuǎn)換符號等都作為運算符處理,使得C語言的運算符類型極為豐富,表達(dá)式類型多樣化。靈活使用可以實現(xiàn)其他高級語言難以實現(xiàn)的運算和操作。 數(shù)據(jù)結(jié)構(gòu)豐富。C語言的數(shù)據(jù)類型有:整型、實型、字符型、數(shù)組類型、指針類型、結(jié)構(gòu)體類型、共用體類型等,用它們可以實現(xiàn)各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)(如鏈表、樹等)。特別是指針類型,使用起來靈活多變。 具有結(jié)構(gòu)化的控制語句,是一種模塊化的程序設(shè)計語言。如if?else語句、while語句、for語句等,可以在程序中使用所有的控制語句。另外,函數(shù)是C語言的基本單位,用函數(shù)作為程序模塊的基本單位,以實現(xiàn)程序的模塊化。 可移植性好。C程序本身基本上可以不作任何修改,就能運行在各種不同型號的計算機和各種操作系統(tǒng)環(huán)境上。 C語言提供了某些接近匯編語言的功能,能直接訪問物理地址,直接對硬件操作,從而有利于編寫系統(tǒng)軟件。 這些是C語言的一般特點。正是由于這些特點,使得它的應(yīng)用非常廣泛。 C語言程序設(shè)計教材特點: 根據(jù)C語言注重實踐的特點,和實際的教學(xué)情況,該教材具有如下特點: 首次真正地在(C語言)程序設(shè)計教材中突出講授程序設(shè)計而不是程序,明確地給出了程序設(shè)計主要過程:將非計算機語言表述的算法,改寫成帶計算過程和計算條件的計算公式的過程。 突出算法在計算學(xué)科中的靈魂作用。強調(diào)程序設(shè)計之前,應(yīng)將解決問題的辦法抽象成帶有計算過程和計算條件的數(shù)學(xué)公式,即使枚舉法,也應(yīng)該用帶計算過程和計算條件的數(shù)學(xué)公式來表示枚舉過程和方法。 將所有帶計算過程和計算條件的數(shù)學(xué)公式,按基本程序模塊分成了遞推算法、迭代算法和嘗試算法三類,使程序規(guī)范化、規(guī)律化,大大降低了程序設(shè)計難度。 所有需要設(shè)計的程序都給出了設(shè)計過程,都給出了帶計算過程和計算條件的數(shù)學(xué)公式,以及和算式有關(guān)的重要的數(shù)據(jù)字典,使程序設(shè)計教材和軟件工程并軌。 1.3 關(guān)于系統(tǒng)兼容性 本程序經(jīng)過調(diào)試,可以在 2000 2003 XP 系統(tǒng)下編譯運行。 1.4 本章小結(jié) 本章主要介紹了,關(guān)于選題和題目的背景;開發(fā)語言和開發(fā)工具做了簡單的介紹;系統(tǒng)的兼容性。這樣使讀者對文章有個大概的了解。 第二章 需求分析 2.1 可行性分析 游戲開發(fā)至今已經(jīng)有30多年,在這個短暫的時期里,隨著硬件水平的提高,游戲開發(fā)新技術(shù)層出不窮,經(jīng)典游戲比比皆是。游戲這個名稱一直就存在于每個人的日常生活中,如猜拳游戲,大地游戲,球類游戲,林林總總,不勝枚舉,甚至于有些流行歌曲把人生也比喻為游戲,好比“一場游戲一場夢”。因此,游戲?qū)τ诂F(xiàn)代人的成長歷程,絕對是一個不可或缺的角色。 2.2 設(shè)計目的 綜合運用在校期間所學(xué)的理論知識和技能,設(shè)計開發(fā)貪吃蛇游戲,使自己熟悉應(yīng)用系統(tǒng)的開發(fā)過程,培養(yǎng)獨立思考能力,檢驗學(xué)習(xí)效果和動手能力,提高工程實踐能力。 2.3 游戲需求 給出1條小蛇和隨機一個食物當(dāng)小蛇吃到食物就加分。 第三章 系統(tǒng)設(shè)計 3.1.概要設(shè)計 通過對貪吃蛇的需求分析,我們用C語言實現(xiàn)該程序概要如下: 畫面設(shè)計: 主要內(nèi)容有對邊框`食物`蛇的設(shè)計,起用了與圖形設(shè)計相關(guān)的函數(shù),有INITGRAPH,SETCOLOR等.首先是畫面的啟動問題,緊接就是畫面的繪制,而對食物及蛇則可放在游戲具體過程中,因為食物是隨機的,而蛇是移動的. 游戲過程: 主要是對食物及蛇的設(shè)置.在這個環(huán)節(jié)程序有幾個重要的算法,是程序能否成功地運行的關(guān)鍵.其主要有蛇是如何移動身體的,蛇怎樣才能吃到食物,怎樣判斷蛇的死亡,以及如何中斷游戲等等. 游戲結(jié)束: 在確定蛇死亡后,游戲結(jié)束,此時就必需退出游戲.注意此時界面的設(shè)計,及分?jǐn)?shù)的輸出和圖形的結(jié)束. 添加的功能: 起先的程序是很簡單的,無任何的修飾,而且在有些地方不便于用戶的操作.于是在相應(yīng)的地方添加了某些功能. 例如在游戲的開頭,添加了”WELCOME TO GAME”的語句,并添加”PRESS ANY KEY TO GAME”以提示用戶.在游戲的中途,用戶可以按ESC鍵以中斷游戲,也可以選擇繼續(xù)游戲. 運用函數(shù)如下表: 表3—1 游戲模塊功能 函數(shù) 函數(shù)名及函數(shù)類型 函數(shù)功能 主函數(shù) Void Main() 調(diào)用輔函數(shù)使用程序 圖形驅(qū)動 Void Init() 啟動畫面開始畫圖 開始畫圖 Void Drawk() 畫出游戲圖框 歡迎界面 Void Pause() 歡迎字幕 續(xù)表3—1 游戲模塊功能 游戲結(jié)束 Void GameOver() 游戲結(jié)束的調(diào)用 開始游戲 VoidPlay() 游戲開始的標(biāo)志 成績輸出 Void Prscore() 游戲進行程度的標(biāo)志 結(jié)束界面 Void Close() 結(jié)束所有的操作 音樂 Void Music() 輸出音樂 3.2.詳細(xì)設(shè)計 程序設(shè)計分析: 開始 歡迎界面 音樂 游戲界面 結(jié)束游戲 退出游戲 圖3-1 主程序圖 這是一個簡單的游戲,所以循環(huán)和分支之類的函數(shù)在大的面上運用較少,主要體現(xiàn)在計算上,尤其是坐標(biāo)上的計算較突出.簡單易懂,一目了然. 開始游戲 鍵入B開始游戲 初步繪制食物和蛇 根據(jù)玩家不同操作來具體操作 游戲結(jié)束 3-2 游戲主圖 在這一過程中包含著這個程序的主要算法:食物是如何出現(xiàn)的;蛇是如何移動了;蛇的每個環(huán)節(jié)如何跟隨蛇頭移動;怎樣才算游戲失敗等等。 食物的出現(xiàn): if(food.yes==1) { food.x=rand()%400+60; food.y=rand()%350+60; while(food.x%10!=0)/*食物隨機出現(xiàn)后必須讓食物能夠在整格內(nèi),這樣才可以讓蛇吃到*/ food.x++; while(food.y%10!=0) food.y++; food.yes=0;/*畫面上有了食物*/ } if(food.yes==0)/*畫面上有了食物就要顯示*/ { setcolor(GREEN); rectangle(food.x,food.y,food.x+10,food.y-10); } 食物是游戲的關(guān)鍵之一,只有設(shè)定好才可以使游戲成功.而食物必須在整格內(nèi)是主要的內(nèi)容,接著就是繪制圖。 蛇的移動: for(i=snake.node-1;i>0;i--)/*蛇的每個環(huán)節(jié)的移動*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; } /*1,2,3,4表示右,左,上,下四個方向,通過這個判斷來移動蛇頭*/ switch(snake.direction) { case 1:snake.x[0]+=10;break; case 2: snake.x[0]-=10;break; case 3: snake.y[0]-=10;break; case 4: snake.y[0]+=10;break; } 蛇尾緊跟隨著蛇頭的改變,蛇頭則依據(jù)輸入的情況做不相應(yīng)的判斷. 補充: while(1) { while(!kbhit()) /*在沒有按鍵的情況下,蛇自己移動身體*/ 游戲失敗 蛇撞到自己 for(i=3;i- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 俄羅斯方塊 實習(xí) 報告
鏈接地址:http://appdesigncorp.com/p-9144763.html