#include "stdio.h"
#include "stdlib.h"
#include "conio.h"
#include "time.h"
int main()
{
srand(time(NULL));
int i , j ;
int x , y ;
int x1[400]={0};
int y1[400]={0};
int num=0;
int scord=0, maxs=0;
int hm=0;
int xun1=0,xun=0;
char zl;
int sl=0,gameover=0;
x1[num]=rand()%28+1; num++;
x=rand()%28+1; y=13;
printf("\33[?25l");
//主循环
while(10){
//循环一 生成界面
while(1){
for(j=0;j<15;j++){
for(i=0;i<30;i++){
int D=0;
for(int k=0;k
if(i==x1[k]&&j==y1[k])
{D=1;break;}
}
if(i==0||i==29||j==0||j==14)
printf("\33[44;34m■\33[0m");
else if(j==7&&i==9){
printf("\33[42;31m【守卫底线】");
i=20;
}
else if(j==8&&i==9){
printf("\33[42;31m【开始游戏】");
i=20;
}
else if(j==9&&i==9){
printf("\33[42;31m【退出游戏】");
i=20;
}
else
printf("\33[42;m \33[0m");
}
printf("\n");
}
switch(getch()){
case'5':xun1=1;break;
case'9':{xun1=1;xun=1;}break;
}
system("clear");
printf("\33[2J");
if(xun1==1)
break;
}//循环一 生成界面
if(xun==0){
//循环二 游戏界面
while(2){
for(j=0;j<15;j++){
for(i=0;i<30;i++){
int d=0;
for(int k=0;k
if(i==x1[k]&&j==y1[k])
{d=1;break;}
}
if(i==0||i==29||j==0||j==14)
printf("\33[44;34m■\33[0m");
else if(i==x&&j==y)
printf("\33[42;31m®\33[0m");
else if(d==1)
printf("\33[42;31mo\33[0m");
else
printf("\33[42;m \33[0m");
}
printf("\n");
}
printf("当前得分:%d\n",scord);
printf("最高得分:%d\n",maxs);
hm++;
if(hm==50){
hm=0;
for(int k=0;k
y1[k]++;
}
if(kbhit())
zl=getch();
system("clear");
switch(zl){
case'2':{
if(y<2);
else
y--;
zl=0;}break;
case'8':{
if(y>12);
else
y++;
zl=0;}break;
case'4':{
if(x<2);
else
x--;
zl=0;}break;
case'6':{
if(x>27);
else