【正文】
ameOver(SNAKE *head)判斷游戲結(jié)束了沒gameing()游戲過程PlaySound()播放背景音樂 Main()主函數(shù)主函數(shù)是程序的主流程,首先定義使用到的常數(shù)、全局變量及函數(shù)原型說明,然后初始化圖形系統(tǒng),調(diào)用函數(shù)gameing(),即玩游戲的具體過程,游戲結(jié)束后執(zhí)行return 0;語句關(guān)閉圖形系統(tǒng),結(jié)束程序。 return 0。 HideCursor()。 printf(|)。 printf(|)。 p1 = head。 p1pre = p2。語句實(shí)現(xiàn)光標(biāo)定位,并且與for (j = 1。 /* x控制在邊寬內(nèi) */ fdy = START_Y + 1 + Random(SCREEN_LENGTH)。 } GotoRood(fdx, fdy)。amp。 int direct = up。 GotoRood(START_X, START_Y 1)。 GotoRood(START_X, START_Y 1)。 ptempy = heady 1。 case right: ptempx = headx + 1。/*吃到了。 /*吃到了,就加分*/ scorelimit += grade。 printf(Score: %3d, score)。Sleep((10 grade) * 50)。(1)設(shè)置初始值。 CONSOLE_CURSOR_INFO cci。 = x。 p = pnext。amp。 } }程序分析:這里我們首先要明確一個(gè)函數(shù)kbhit()函數(shù)(VC++()),該函數(shù)的功能及返回值為:檢查當(dāng)前是否有鍵盤輸入,若有則返回一個(gè)非0值,否則返回0。 為了更好地放松身心,在玩游戲的時(shí)候我們可以一邊玩游戲一邊聽音樂。 圖65 游戲結(jié)束界面調(diào)試與測(cè)試軟件的目標(biāo)就是發(fā)現(xiàn)并改正潛伏的錯(cuò)誤。實(shí)際運(yùn)行結(jié)果:在第(1)步,進(jìn)入游戲后不能播放片頭音樂。實(shí)際運(yùn)行的效果:蛇頭撞到蛇身時(shí),程序停止了。最后連續(xù)運(yùn)行了5次,以便測(cè)試該游戲程序的功能、性能是否達(dá)到了預(yù)期的目標(biāo),并根據(jù)所使用的具體機(jī)器隨蛇的爬行速度進(jìn)行適當(dāng)?shù)恼{(diào)整。 我做的是貪吃蛇游戲。 編程是一件很枯燥很無聊的事情,但是出于完成作業(yè),得到學(xué)分的壓力,還必須強(qiáng)破自己堅(jiān)持下去,按照老師所說的模塊化思想,分部分的進(jìn)行編寫。雖然說,設(shè)計(jì)的過程是艱苦的,但是其中所帶給我的快樂卻是不言而喻的。在撰寫論文階段,多次親自審閱我的論文,并提出許多改進(jìn)意見。on line39。在論文即將完成之際,我的心情無法平靜,從開始進(jìn)入課題到論文的順利完成,有多少可敬的師長、同學(xué)、朋友給了我無言的幫助,在這里請(qǐng)接受我誠摯的謝意!參考文獻(xiàn)[01]譚浩強(qiáng).《C程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》.北京:清華大學(xué)出版社,1992.[02]趙海廷.《C語言程序設(shè)計(jì)》.北京:人民郵電出版社,2005.[03]何光明,楊靜宇.《C語言程序設(shè)計(jì)與應(yīng)用開發(fā)》.北京:清華大學(xué)出版社,2006[04]張強(qiáng)華.《 C 語言程序設(shè)計(jì)》.北京:人民郵電出版社,2001.[05]譚浩強(qiáng).《 C 語言程序設(shè)計(jì)》.北京:清華大學(xué)出版社,1999.[06]徐建民.《 C 語言程序設(shè)計(jì)》.北京:電子工業(yè)出版社,2002.[07]錢啟平.《C語言程序設(shè)計(jì)基礎(chǔ)》.北京:鐵道出版社,2000.[08]. 北京:清華大學(xué)出版社,2006.[09]高陽等.微軟Visual Studio 2010實(shí)戰(zhàn)兵法.北京:電子工業(yè)出版社,2010.[10]王繼民,柴春來,余宇峰等. C++:清華大學(xué)出版社,2003.[11]廖雷.《C語言程序設(shè)計(jì)》.第2版.北京:高等教育出版社,2006. [12]賈學(xué)斌,宋海民.《C語言程序設(shè)計(jì)》.06年版.北京:中國鐵道出版社,2007. [13]徐新華. 《 C 語言程序設(shè)計(jì)教程》.:清華大學(xué)出版. [14]李大友. 《 C 語言程序設(shè)計(jì)》.:. [15]畢萬新. 《 C 語言程序設(shè)計(jì)》.:大連理工大學(xué)出版. [16]劉 燕. 《 C 語言程序設(shè)計(jì)》.:. [17]方少卿. 《C語言程序設(shè)計(jì)》. :. [18]吳文虎. 《 程序設(shè)計(jì)基礎(chǔ)》.:. 附錄A附 錄:英文技術(shù)資料翻譯英文原文:The History of the InternetThe Beginning ARPAnetThe Internet started as a project by the US government. The object of the project was to create a means of munications between long distance points, in the event of a nation wide emergency or, more specifically, nuclear war. The project was called ARPAnet, and it is what the Internet started as. Funded specifically for military munication, the engineers responsible for ARPANet had no idea of the possibilities of an Internet. By definition, an 39。他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵(lì)著我。又經(jīng)過幾天的努力,終于把程序完成了,盡管程序還是有很多錯(cuò)誤和漏洞,不過還是很高興的。特別是結(jié)構(gòu)體,指針的部分,幾乎是一片空白。 回顧起此次畢業(yè)設(shè)計(jì),至今我們?nèi)愿锌H多,的確,自從拿到題目到完成整個(gè)編程,從理論到實(shí)踐,在整整一個(gè)學(xué)期的日子里,可以學(xué)到很多很多的東西,同時(shí)不僅可以鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。amp。修改后程序運(yùn)行的實(shí)際結(jié)果與預(yù)期效果一致。幾個(gè)模塊放在一個(gè)構(gòu)成一個(gè)源程序文件,或者一個(gè)模塊構(gòu)成一個(gè)源程序文件。 //休息1秒}exit(0)。 }其中,ch == 72 和(*d == left || *d == right) amp。 *d != right) *d = left。 if (ch == 72) { if ((*d == left || *d == right) amp。 return (rand() % n)。 SetConsoleCursorInfo(hOut, amp。(2)循環(huán)執(zhí)行,直到按Esc鍵退出。 puts(小菜鳥,你輸了\n)。*/ { /*每過一次50分,等級(jí)增加一次,10級(jí)是上限 */ GotoRood(START_X, START_Y 1)。 ptemppre = NULL。 /*將蛇的尾端位置改變,變?yōu)榈箶?shù)第二個(gè)*/ headendprenext = NULL。 break。 ptemp = (SNAKE *)malloc(sizeof(SNAKE))。 IniScreen(head)。 /*最少3個(gè)蛇身 + 1個(gè)蛇頭的時(shí)候才會(huì)掛。 游戲的具體過程函數(shù)gameing()這個(gè)函數(shù)是游戲的主要部分,難點(diǎn)是在表示蛇的新位置,采用的方法是鏈表傳遞的方法。 else if (heady == START_Y) /*...再向上撞...*/ heady = START_Y + SCREEN_LENGTH。amp。 構(gòu)建食物函數(shù)void CreatFood(FOOD *fd, SNAKE *snk) /*做吃的,記得增加一個(gè)功能就是讓食物不與蛇體沖突*/ { SNAKE *p = snk。如 for (i = 0。 p1x = START_X + SCREEN_WIDTH / 2。 printf(游戲說明:\n\n↑設(shè)置等級(jí)\n\n按〖回車〗開始\n\n↑↓←→\n控制方向\n)。 i++) printf()。 i++) printf()。自然而然的,這里的main函數(shù)就是貪吃蛇游戲程序的入口函數(shù),通過該入口函數(shù),進(jìn)而可以調(diào)用gameing()函數(shù),使游戲運(yùn)行起來 游戲界面設(shè)計(jì)主界面就是一個(gè)密封的矩形框,在矩形框的左邊是游戲的操作說明,在框內(nèi)主要是蛇和食物。 system(pause)。在這個(gè)環(huán)節(jié)過程中有幾個(gè)重要的算法,是程序能否成功地運(yùn)行的關(guān)鍵。同樣地,智能手機(jī)的普及,使得手機(jī)游戲市場(chǎng)空前發(fā)展??梢哉f該游戲的優(yōu)勢(shì)不僅在于它的簡單易行,而且在于它很快順利的運(yùn)行。不論是一個(gè)玩具,還是一個(gè)能和伙伴一起開心的小游戲,都是能給我們留下美好的回憶。第3章 需求分析 技術(shù)可行性 本系統(tǒng)的設(shè)計(jì)要求是一個(gè)能在Windows操作系統(tǒng)下運(yùn)行且界面美觀運(yùn)行穩(wěn)定且將來可能用于嵌入式移植的系統(tǒng)。Visual C++ ,由于其功能強(qiáng)大,靈活性好,完全課擴(kuò)展以及具有強(qiáng)大的Internet支持,因而在各種VC++語言開發(fā)工具中脫穎而出,成為目前最為流行的VC++語言集成開發(fā)環(huán)境。 Microsoft Visual C++ Visual Studio ++程序開發(fā)包。同樣地,智能手機(jī)的普及,使得手機(jī)游戲市場(chǎng)空前發(fā)展。勿須質(zhì)疑,在巨大的經(jīng)濟(jì)誘惑面前,PC互聯(lián)網(wǎng)游戲流行期過后,很多投資商將更多的傾向于由互聯(lián)網(wǎng)、手機(jī)共同打造的SP市場(chǎng)。 還有一些特別的游戲種類,比如通過音樂,攝像頭、麥克風(fēng)等輸入方式進(jìn)行一種全新的娛樂的游戲類型,在手機(jī)休閑平臺(tái)上還是很有發(fā)展前途??赏嫘暂^高。而且隨著3D技術(shù)的發(fā)展,更使這一類型游戲畫面立體感強(qiáng),讓其在手機(jī)游戲的發(fā)展空間更為拓展。終端的普及度不夠高,游戲的同質(zhì)化和低質(zhì)量問題也正困擾著國內(nèi)手機(jī)游戲市場(chǎng),雖然過高的資費(fèi)一直被看作阻礙手機(jī)游戲市場(chǎng)發(fā)展的最大障礙,但最為關(guān)鍵的問題是不規(guī)范的服務(wù)使眾多玩家喪失信心。近年來,手機(jī)制造商開始與機(jī)芯、操作系統(tǒng)企業(yè)展開合作,為手機(jī)游戲創(chuàng)造更好的軟硬件平臺(tái)。由于益智類游戲簡單、易上手,操作時(shí)間短,能夠使手機(jī)用戶在較短的時(shí)間內(nèi)去消遣,讓用戶在繁忙的時(shí)候得到放松。從那時(shí)候開始手機(jī)不再只限于單一的通信。本文通過對(duì)中國目前的手機(jī)游戲現(xiàn)存的一些問題和發(fā)展方向進(jìn)行了分析,為如何促進(jìn)我國手機(jī)游戲發(fā)展提出了一些看法和建議。而就大型游戲而言,一般使用幾種語言混合開發(fā),比如C++接合腳本預(yù)言。C語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。從而使C的運(yùn)算類型極其豐富表達(dá)式類型多樣化,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級(jí)語言中難以實(shí)現(xiàn)的運(yùn)算。C語言發(fā)展迅速, 而且成為最受歡迎的語言之一, 主要因?yàn)樗哂袕?qiáng)大的功能。1970年,美國貝爾實(shí)驗(yàn)室的Ken Thompson將BCPL進(jìn)行了修改,并為它起了一個(gè)有趣的名字“B語言”。based on C language Abstract With the development of science and technology ,many people are eager to have some entertainment activities when they do not need to work,and gluttonous snake game cater to the psychology of the masses order to cater to the demands of many users, we develop the little game called gluttonous snake .what’s more, the game is not noly suitable for people from all works of life, but it has also strong entertainment and interaction. The reason why the game called gluttonous snake is not that it asks us to be greedy but to do our best to work hard in order to get what we want. The food that the snake eats just like opportunity and We only have to find their own goals to succeed. Althrough there are many of version of the game on the market,but the market of the game is still very reason is that it does not make us to put it down. With the gradual speed up the game speed, the irritation is also stronger.