資源簡介
【核心代碼】
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <conio.h> #define GAMESIZE 20 int snake_land[GAMESIZE][GAMESIZE]={0}; int x=GAMESIZE/2 1,y=GAMESIZE/2-1,length=3,score; clock_t start_time=clock(),mid_time=1000,speed_time=clock(),food_time=clock(); void Snake_round() //打印 { int i,j; system("cls"); for(i=0;i<=GAMESIZE;i ) printf("__"); printf("\n"); for(i=0;i<GAMESIZE;i ) { printf("|"); for(j=0;j<GAMESIZE;j ) { if(snake_land[i][j]==0) printf(" "); else if(snake_land[i][j]>0) printf("⊙"); else if(snake_land[i][j]<0) printf("▇"); //printf("%d ",snake_land[i][j]) ; } printf("|"); if(i==3) printf(" snake_length: %d",length); if(i==4) printf(" snake_speed: %d",11-mid_time/100); printf("\n"); } for(i=0;i<=GAMESIZE;i ) printf(" ̄"); } void Snake_body() //身體標記 { snake_land[y][x]=1; snake_land[y][x-1]=2; snake_land[y][x-2]=3; } void Snake_control() // { int i,j,k,l; char a; for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) if(snake_land[i][j]==2) break; if(snake_land[i][j]==2) break; } if(kbhit()) { a=getch(); if(a=='w'&&y==i) { for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) { if(snake_land[i][j]==length) {k=i;l=j;} if(snake_land[i][j]>0) snake_land[i][j]; } } --y; if(snake_land[y][x]==0) snake_land[k][l]=0; else if(snake_land[y][x]<0) length; else if(snake_land[y][x]>0) { score=length;length=0;} snake_land[y][x]=1; } else if(a=='s'&&y==i) { for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) { if(snake_land[i][j]==length) {k=i;l=j;} if(snake_land[i][j]>0) snake_land[i][j]; } } y; if(snake_land[y][x]==0) snake_land[k][l]=0; else if(snake_land[y][x]<0) length; else if(snake_land[y][x]>0) { score=length;length=0;} snake_land[y][x]=1; } else if(a=='a'&&x==j) { for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) { if(snake_land[i][j]==length) {k=i;l=j;} if(snake_land[i][j]>0) snake_land[i][j]; } } --x; if(snake_land[y][x]==0) snake_land[k][l]=0; else if(snake_land[y][x]<0) length; else if(snake_land[y][x]>0) { score=length;length=0;} snake_land[y][x]=1; } else if(a=='d'&&x==j) { for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) { if(snake_land[i][j]==length) {k=i;l=j;} if(snake_land[i][j]>0) snake_land[i][j]; } } x; if(snake_land[y][x]==0) snake_land[k][l]=0; else if(snake_land[y][x]<0) length; else if(snake_land[y][x]>0) { score=length;length=0;} snake_land[y][x]=1; } } } void Snake_speed() { int i,j,k,l; clock_t end_time=clock() ; if(end_time-speed_time>10000&&mid_time>400) { mid_time-=100; speed_time=end_time; } if(end_time-start_time>mid_time) { start_time=end_time; for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) { if(snake_land[i][j]==length) {k=i;l=j;} if(snake_land[i][j]>0) snake_land[i][j]; } } for(i=0;i<GAMESIZE;i ) { for(j=0;j<GAMESIZE;j ) if(snake_land[i][j]==3) break; if(snake_land[i][j]==3) break; } if(i>y&&x==j) --y; else if(i<y&&x==j) y; else if(j>x&&y==i) --x; else if(j<x&&y==i) x; if(snake_land[y][x]==0) snake_land[k][l]=0; else if(snake_land[y][x]<0) length; else if(snake_land[y][x]>0) { score=length;length=0;} snake_land[y][x]=1; } } void Snake_food() // { int i,j; clock_t a=clock() ; if(a-food_time>3000) { food_time=a; srand((unsigned)time(NULL)); i=rand()%GAMESIZE; j=rand()%GAMESIZE; if(snake_land[i][j]==0) snake_land[i][j]=-1; } } int main() { int i,j; Snake_round(); Snake_body(); for(i=0;i<GAMESIZE;i ) for(j=0;j<GAMESIZE;j ) snake_land[i][16]=-1; for(;;) { Snake_speed(); Snake_control(); Snake_food(); if(length==0) break; Snake_round(); } system("cls"); printf("\ngame over!\nyour score:%d",score); return 0; }
代碼片段和文件信息
#include?
#include?
#include?
#include?
#define?GAMESIZE?20
int?snake_land[GAMESIZE][GAMESIZE]={0};
int?x=GAMESIZE/2+1y=GAMESIZE/2-1length=3score;
clock_t?start_time=clock()mid_time=1000speed_time=clock()food_time=clock();?
void?Snake_round()?????//打印?
{
int?ij;?
system(“cls“);
for(i=1;i<=GAMESIZE-1;i++)?
printf(“__“);
printf(“\n“);
for(i=1;i {
printf(“|“);
for(j=1;j {
if(snake_land[i][j]==0)??printf(“??“);
else?if(snake_land[i][j]>0) printf(“⊙“);
else?if(snake_land[i][j]<0) printf(“▇“);
//printf(“%d?“snake_land[i][j])?;
}
printf(“|“);
if(i==3)??printf(“????snake_length:?%d“length);
if(i==4)??printf(“????snake_speed:?%d“11-mid_time/100);
printf(“\n“);
}
for(i=0;i<=GAMESIZE;i++)?
printf(“ ̄“);
}
void?Snake_body() ???//身體標記?
{
int?i;
snake_land[y][x]=1;
snake_land[y][x-1]=2;
snake_land[y][x-2]=3;?
for(i=0;i {
snake_land[0][i]=99;
snake_land[i][0]=99;
snake_land[GAMESIZE-1][i]=99;
snake_land[i][GAMESIZE-1]=99;
}
}
void?Snake_control()??//
{
int?ijkl;
char?a;
for(i=0;i {
for(j=0;j if(snake_land[i][j]==2)?break;
if(snake_land[i][j]==2)?break;
}
if(kbhit())?
{
a=getch();?
if((a==‘w‘||a==‘W‘)&&y==i)?
{
for(i=0;i {
for(j=0;j {
if(snake_land[i][j]==length)?{k=i;l=j;}
if(snake_land[i][j]>0)?++snake_land[i][j];
}
}
--y;
if(snake_land[y][x]==0)?snake_land[k][l]=0;
else?if(snake_land[y][x]<0)?++length;
else?if(snake_land[y][x]>0)?{?score=length;length=0;}
snake_land[y][x]=1;
}
else?if((a==‘s‘||a==‘S‘)&&y==i)?
{
for(i=0;i {
for(j=0;j {
if(snake_land[i][j]==length)?{k=i;l=j;}
if(snake_land[i][j]>0)?++snake_land[i][j];
}
}
++y;
if(snake_land[y][x]==0)?snake_land[k][l]=0;
else?if(snake_land[y][x]<0)?++length;
else?if(snake_land[y][x]>0)?{?score=length;length=0;}
snake_land[y][x]=1;
}
?
?else?if((a==‘a‘||a==‘A‘)&&x==j)?
{
for(i=0;i {
for(j=0;j {
if(snake_land[i][j]==length)?{k=i;l=j;}
if(snake_land[i][j]>0)?++snake_land[i][j];
}
}
--x;
if(snake_land[y][x]==0)?snake_land[k][l]=0;
else?if(snake_land[y][x]<0)?++length;
else?if(snake_land[y][x]>0)?{?score=length;length=0;}
snake_land[y][x]=1;
}
else?if((a==‘d‘||a==‘D‘)&&x==j)?
{
for(i=0;i {
for(j=0;j {
if(snake_land[i][j]==length)?{k=i;l=j;}
if(snake_land[i][j]>0)?++snake_land[i][j];
}
}
++x;
if(snake_land[y][x]==0)?snake_land[k][l]=0;
else?if(snake_land[y][x]<0)?++length;
else?if(snake_land[y][x]>0)?{?score=length;length=0;}
snake_land[y][x]=1;
}
}
?
}
void?Snake_speed()
{
int?ijkl;
clock_t?end_time=clock()?;
if(end_time-speed_t
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\貪吃蛇\
?????文件????????4110??2019-01-24?15:01??貪吃蛇\貪吃蛇.txt
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\貪吃蛇\Debug\
?????文件???????39936??2019-07-11?08:36??貪吃蛇\貪吃蛇\Debug\貪吃蛇.exe
?????文件?????????406??2019-01-31?20:40??貪吃蛇\貪吃蛇\Debug\貪吃蛇.exe.manifest
?????文件??????334136??2019-07-11?08:36??貪吃蛇\貪吃蛇\Debug\貪吃蛇.ilk
?????文件??????527360??2019-07-11?08:36??貪吃蛇\貪吃蛇\Debug\貪吃蛇.pdb
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\貪吃蛇\ipch\
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\貪吃蛇\ipch\貪吃蛇-ec1675cc\
?????文件?????2228224??2019-07-24?09:38??貪吃蛇\貪吃蛇\ipch\貪吃蛇-ec1675cc\貪吃蛇-f10784c0.ipch
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\貪吃蛇\貪吃蛇\
?????文件????24465408??2019-07-24?09:39??貪吃蛇\貪吃蛇\貪吃蛇.sdf
?????文件?????????899??2019-01-23?14:48??貪吃蛇\貪吃蛇\貪吃蛇.sln
?????文件???????13312??2019-07-24?09:39??貪吃蛇\貪吃蛇\貪吃蛇.suo
?????文件????????5425??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\csnake.cpp
?????目錄???????????0??2019-09-02?09:50??貪吃蛇\貪吃蛇\貪吃蛇\Debug\
?????文件????????1334??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\cl.command.1.tlog
?????文件???????16858??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\CL.read.1.tlog
?????文件?????????716??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\CL.write.1.tlog
?????文件???????31768??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\csnake.obj
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
?????文件???????????2??2019-07-11?08:36??貪吃蛇\貪吃蛇\貪吃蛇\Debug\li
............此處省略86個文件信息
- 上一篇:三次樣條插值?類源代碼!
- 下一篇:鼠標連點器(附源碼)
評論
共有 條評論