freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言課程設(shè)計報告——貪吃蛇源程序-wenkub

2023-05-28 18:24:52 本頁面
 

【正文】 畫游戲開始界面 游戲具體過程 游戲結(jié)束處理 關(guān)閉圖形系統(tǒng)結(jié)束 繪制游戲開始界面drawk函數(shù) 繪制游戲界面的函數(shù)的算法流程圖如圖63所示。 主控模塊main函數(shù)主函數(shù)是程序的主控模塊。define RIGHT 0x4d00。 其他全局變量的定義Struct person per[5]。為了存放排行榜信息,可定義如下的結(jié)構(gòu)體類型,其中字符數(shù)組name成員存放優(yōu)勝者的姓名,整型變量score成員存放優(yōu)勝者的成績。Int derection。}food。LIFE是表示生命的變量,LIFE=0表示蛇活著,一旦LIFE=1,一旦LIFE=1,表示蛇死,結(jié)束游戲。放置食物后,置YES=0。下面介紹貪吃蛇游戲程序的主要數(shù)據(jù)結(jié)構(gòu)。用一個小局限性方塊表示蛇的一節(jié)身體,身體每長一節(jié),增加一個矩形塊,蛇頭業(yè)用同樣的一節(jié)小矩形方塊表示移動時必須從蛇可以上向前爬行,檔案下有效方向鍵后,應(yīng)先確定蛇頭的位置,而后蛇的身體雖蛇頭移動,圖形的實現(xiàn)是從身體新位置開始畫出蛇。首先畫出頂層模塊,即主控模塊,之完成對下層模塊的調(diào)用功能,即調(diào)用其他的功能模塊;接著,按需求分析中的功能需求設(shè)計第一層模塊,有音樂動畫,圖形驅(qū)動,畫主界面,游戲過程,結(jié)束處理,退出等第6個主要功能;接著,畫出第二層模塊。顯示排行榜。食物用一個點表示,并且每次食物的位置都是隨機出現(xiàn)的。對于在外忙碌的人,不可能花費大量時間在娛樂上,大型游戲是行不通的,這樣的小游戲剛好迎合了他們的需求。 在本次課程設(shè)計中需要完成的任務(wù)有:包含命令,全局變量的定義和宏定義,函數(shù)聲明等(50行),主控模塊(MAIN函數(shù),14行),動畫,音樂播放模塊(DRAWSNOW函數(shù),33行),畫出游戲開始界面模塊,具體游戲過程模塊,游戲結(jié)束處理模塊。 5)圖形,音樂和動畫的有關(guān)知識。 : 1) 數(shù)組的應(yīng)用。3) 設(shè)計好數(shù)組元素與蛇,食物的對應(yīng)關(guān)系。貪吃蛇游戲雖小,卻設(shè)計諸多的知識點。 研究的背景及意義 隨著社會的發(fā)展,人們生活的節(jié)奏日益加快,越來越多的人加入了全球化的世界。人們不再拘泥與一小塊天地,加班,出差成了現(xiàn)代人不可避免的公務(wù)。通過開發(fā)貪吃蛇游戲系統(tǒng),可使讀者初步了解使用軟件工程的和那個發(fā),技術(shù)和工具開發(fā)軟件的過程,進一步掌握結(jié)構(gòu)化,模塊化的程序設(shè)計方法和步驟,進一步掌握總體數(shù)據(jù)結(jié)構(gòu)設(shè)計,模塊劃分方法,掌握局部變量,全局變量,結(jié)構(gòu)體,共用體,數(shù)組,指針,文件等數(shù)據(jù)結(jié)構(gòu)的使用方法,掌握圖形,聲音,隨機數(shù)等多種庫函數(shù)的使用方法,學(xué)習動畫,音樂,窗口,菜單,鍵盤等多項編程技術(shù),進一步學(xué)會軟件調(diào)試,測試,組裝等軟件測試方法,為后續(xù)課程的學(xué)習和將來實際軟件開發(fā)打下堅實的基礎(chǔ)。4) 隨機產(chǎn)生食物。 2) 全局變量的使用。 6)隨即函數(shù)的使用。開發(fā)中工作量約為215行源代碼。 要開發(fā)貪吃蛇游戲程序,首先要分析改程序應(yīng)實現(xiàn)哪些功能。游戲中要使貪吃蛇盡可能的長,但是不能使貪吃蛇撞到四周的墻壁,而且蛇的身體不能撞到一起,否則游戲結(jié)束。由于有關(guān)貪吃蛇和食物的數(shù)據(jù)較多,而且關(guān)系密切,貪吃蛇及食物都是定義結(jié)構(gòu)體數(shù)據(jù)類型,這樣定義便于操作與處理??傮w模塊結(jié)構(gòu)如圖61所示。這時,由于未清屏的原因,原來的蛇的位置和新蛇的位置差一節(jié)蛇身,即看起來蛇多一節(jié)身體,所以將蛇的最后一節(jié)用背景色覆蓋。 食物與蛇的數(shù)據(jù)結(jié)構(gòu) 表示食物與蛇的矩形塊設(shè)計為10*10個像素單位,食物的基本數(shù)據(jù)域為它所出現(xiàn)的位置,用X和Y坐標表示,則矩形塊用函數(shù)RECTANGLE(X,Y,X+10,Y+10)或RECTANGLE(X,Y,X+10,Y10)可以畫出。蛇的一節(jié)身體為一個矩形塊,表示矩形塊只需左上角點坐標(X,Y)。define N 200Struct Food{ int x。Struct Snake{ int x[N]。Int life。Struct person{ char name[20]。Int score=0。define DOWN 0x5000。首先初始化圖形系統(tǒng),然后使用drawsnow函數(shù)播放動畫和聲音,接著調(diào)用init函數(shù)初始化圖形系統(tǒng),之后調(diào)用drawk函數(shù)畫出游戲開始畫面,在調(diào)用gameplay函數(shù),即開始了游戲的具體過程,游戲結(jié)束后調(diào)用endplay函數(shù)進行游戲結(jié)束處理;從文件中讀取記錄信息,排序,顯示排行榜信息,最后關(guān)閉圖形系統(tǒng),結(jié)束程序。 主界面就是一個封閉的圍墻,用兩個循環(huán)語句分別在水平方向和垂直方向輸出連續(xù)的寬度和高的均為10個像素單位的距行小方塊,圍成封閉圖形表示圍墻,為了醒目,設(shè)置為淡青色,用函數(shù)setlinestyle設(shè)直線型寬度為3個像素,設(shè)置3個像素的圍墻線。下面對該算法不夠詳細的地方作進一步的描述。設(shè)定蛇開始的爬行方向左右。采用的方法是每次移動的時候從最后一節(jié)開始到第二節(jié),將前一節(jié)的坐標值賦給后一節(jié)的坐標,移動后只要把最后一節(jié)用背景色擦出即可,因為新位置0到n1節(jié)還是要出現(xiàn)在畫面上的。其中1=向右,2=向左,3=向上,4=向下。 其次,判斷游戲者的成績是否可以上排行榜。一個程序,必須經(jīng)過認真的調(diào)試和測試,才能盡量減少錯誤、保證程序滿足功能、性能需求,達到最初的設(shè)計、使用要求,從而保證程序的開發(fā)質(zhì)量。 動畫與音樂的同步播放預(yù)期結(jié)果:?片頭在顯示動畫得同時播放音樂;?按任意鍵后進入游戲主界面;?進入游戲主界面后動畫音樂同時停止。修改:在動畫播放完后加一條“nosound();”語句將揚聲器關(guān)閉,問題得到解決。錯誤分析:錯誤程序段在蛇運行中的條件判斷語句中,其判斷條件是:if([0]55|| [0]595),即少了上、下兩個方向的判斷。 實際運行效果:蛇頭撞到蛇身時,程序并不終止。amp。 終止循環(huán) 經(jīng)過對各個模塊的調(diào)試和單元測試并修改了錯誤后,將各個模塊組裝成一個系統(tǒng),并進行集成測試。六. 結(jié)論通過2周的課程設(shè)計,在開發(fā)小組共同的努力下,終于完成了貪吃蛇游戲程序的開發(fā)任務(wù)。1) 進入游戲后,到蛇死亡,只能玩一次就會退出程序。 貪吃蛇游戲的編程練習思考數(shù)據(jù)結(jié)構(gòu):定義食物的坐標來控制它出現(xiàn)的位置,用一系列的函數(shù)時進行表示,比如用函數(shù)rectangle來畫出矩形,用life變量的值表示蛇的生命,用direction變量的值表示蛇移動的方向等,還有用數(shù)組來存放蛇身各節(jié)的坐標,這些都讓我們熟悉了對數(shù)組的操作,此外還熟悉了各種函數(shù)的應(yīng)用。在編程時我們要有豐富的想象力,不要拘泥與固定的思維方式,遇到問題的時侯要多想幾種解決問題的方案。養(yǎng)成良好的習慣,代碼的縮進編排,變量的命名規(guī)則要始終保持一致,這些都是提高我們編程能力的要點。老師多次詢問編寫進程,并為我們指點迷津,幫助我們開拓研究思路,精心點撥、熱心鼓勵。 序 清 單/*貪吃蛇游戲程序清單*/includeincludeincludeincludeincludeincludeincludeincludedefine filename c:\\ /*排行榜文件的文件全名*/define esc 0x011b /*esc鍵*/define n 200 /*蛇的最大節(jié)數(shù)*/define left 0x4b00 /*左移方向鍵*/define right 0x4d00 /*右移放向鍵*/define down 0x5000 /*下移方向鍵*/define up 0x4800 /*上移方向鍵*/ /*排行榜結(jié)構(gòu)體*/struct person {int score。 /*動畫音樂函數(shù)*/void readfiles()。 /*排行榜按分數(shù)進行排序*/void endplay()。/*改變歡迎詞顏色*/ settextstyle(0,0,4)。 int sx[62]。 line(9,1,1,9)。/*清屏*/ randomize()。/*調(diào)用Pr函數(shù)輸出歡迎詞并播放聲音*/ if(snownum!=100) {snow[snownum].speed=2+random(5)。/*取縱坐標*/ } /*循環(huán)放置snownum個雪花*/
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1