資源描述:
《貪吃蛇代碼 以及游戲程序》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、貪吃蛇代碼以及游戲程序#include#include#include#include#include#includeintsnake_len=1;//蛇的長(zhǎng)度intsnake_loc[50][2]={31,12};//整條蛇的位置,最長(zhǎng)為50intsnake_head[2]={31,12};//蛇頭位置,初始值為11,12;intfood[2];//食物位置charsnake_direction='s';int
2、delay=200;//蛇每delay個(gè)時(shí)間走一步inteat_flag=0;//1表示吃了食物,0表示未吃intliv_stat=0;//1表示死了,游戲該結(jié)束了;0表示還活著voidgotoxy(intx,inty)//定位光標(biāo),x為行坐標(biāo),y為列坐標(biāo){COORDpos={x,y};HANDLEhOut=GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleCursorPosition(hOut,pos);}voidhidden()//隱藏光標(biāo){HANDLEhOut=GetStdHandle
3、(STD_OUTPUT_HANDLE);CONSOLE_CURSOR_INFOcci;GetConsoleCursorInfo(hOut,&cci);cci.bVisible=0;//賦1為顯示,賦0為隱藏SetConsoleCursorInfo(hOut,&cci);}voidinit()//初始化{inti;snake_len=1;//蛇的長(zhǎng)度snake_loc[0][0]=31;//整條蛇的位置snake_loc[0][1]=12;snake_head[0]=31;//蛇頭位置,初始值為11,12;snake_head
4、[1]=12;snake_direction='s';delay=200;eat_flag=0;liv_stat=0;for(i=1;i<50;i++){snake_loc[i][0]=0;//整條蛇的位置snake_loc[i][1]=0;}}voidcreate_window()//創(chuàng)建窗口{gotoxy(0,0);printf("********************************************************************************");printf("***")
5、;printf("***");printf("**分?jǐn)?shù):1*");printf("**按鍵說明:*");printf("**上:w*");printf("**下:s*");printf("**左:a*");printf("**右:d*");printf("**暫停:空格*");printf("*袁楚瑤捉蛇*退出:Esc鍵*");printf("***");printf("***");printf("***");printf("***");printf("***");printf("*高敏放蛇**");printf("***"
6、);printf("***");printf("***");printf("***");printf("***");printf("***");printf("********************************************************************************");}voidupdate_score()//更新分?jǐn)?shù){gotoxy(73,3);printf("%2d",snake_len);}voidcreate_food()//產(chǎn)生食物的位置{time_tt;sra
7、nd(time(&t));while(1){food[0]=rand()%62+1;//生成1~62之間的隨機(jī)數(shù),其中random函數(shù)生成0~77之間的隨機(jī)數(shù)food[1]=rand()%22+1;//生成1~22之間的隨機(jī)數(shù),其中random函數(shù)生成0~17之間的隨機(jī)數(shù)if(food[0]!=snake_head[0]&&food[1]!=snake_head[1])break;}gotoxy(food[0],food[1]);printf("*");}voiddirection(){charkeyhit=0,i;whil
8、e(kbhit()!=0)keyhit=getch();if(((keyhit=='a')
9、
10、(keyhit=='d')
11、
12、(keyhit=='w')
13、
14、(keyhit=='s'))&&(abs(snake_direction/16-keyhit/16)==1))snake_directi