qt编程可以玩什么游戏?
包括lt;iostream.h
包括lt;windows.h
包括lt;time.h
包括lt;stdlib.h
包括lt;conio.h
定义N 21
Void gotoxy(int x,int y)//位置函数
{
坐标位置;
位置。X = 2 * x
位置。Y = y
SetConsoleCursorPosition(GetStdHandle(STD _ OUTPUT _ HANDLE),pos);
}
Void color(int a)//颜色函数
{
SetConsoleTextAttribute(GetStdHandle(STD _ OUTPUT _ HANDLE),a);
}
Void init(int apple[2])//初始化函数(初始化栅栏,显示信息,apple)
{
int i,j;//初始化围栏
int wall[N+2][N+2]= { { 0 } };
for(I = 1;ilt= N;i++)
{
for(j = 1;jlt= N;j++)
wall[I][j]= 1;
}
颜色(11);
for(I = 0;iltn+2;i++)
{
for(j = 0;jltn+2;j++)
{
if(wall[i][j])
coutltlt;;■;;
else coutltlt;;□;;
}
coutltlt;endl
}
gotoxy(N+3,1);//显示信息
颜色(20);
coutltlt;;根据W S A D的移动方向;lt;lt;endl
gotoxy(N+3,2);
颜色(20);
coutltlt;;按任意键暂停;lt;lt;endl
gotoxy(N+3,3);
颜色(20);
coutltlt;;分数:;lt;lt;endl
apple[0]= rand()% N+1;//苹果
apple[1]= rand()% N+1;
gotoxy(苹果[0],苹果[1]);
颜色(12);
coutltlt;;●;lt;lt;endl
}
int main()
{
int i,j;
int * * snake = NULL
int apple[2];
int得分= 0;
int tail[2];
int len = 3;
char ch =;p;;
srand((无符号)时间(空));
init(苹果);
snake=(int**)realloc(snake,sizeof(int *)* len);
for(I = 0;iltleni++)
snake[I]=(int *)malloc(sizeof(int)* 2);
for(I = 0;iltleni++)
{
snake[I][0]= N/2;
snake[I][1]= N/2+I;
gotoxy(snake[i][0],snake[I][1]);
颜色(14);
coutltlt;;★;lt;lt;endl
}
While(1)//进入消息循环。
{
tail[0]= snake[len-1][0];
尾巴[1]=蛇[len-1][1];
gotoxy(tail[0],tail[1]);
颜色(11);
coutltlt;;■;lt;lt;endl
for(I = len-1;我;0;我-)
{
蛇[I][0]=蛇[I-1][0];
蛇[I][1]=蛇[I-1][1];
gotoxy(snake[i][0],snake[I][1]);
颜色(14);
coutltlt;;★;lt;lt;endl
}
if(kbhit())
{
gotoxy(0,N+2);
ch = getche();
}
开关(通道)
{
案例;w;:snake[0][1]-;打破;
案例;s;:snake[0][1]++;打破;
案例;a;:snake[0][0]-;打破;
案例;d;:snake[0][0]++;打破;
默认:break
}
gotoxy(snake[0][0],snake[0][1]);
颜色(14);
coutltlt;;★;lt;lt;endl
睡眠(ABS(200-0.5 *分));
if(Snake[0][0]= = Apple[0]Snake[0][1]= = Apple[1])//吃了苹果后,蛇的分数增加1,蛇的长度增加1。
{
得分++;
len++;
snake=(int**)realloc(snake,sizeof(int *)* len);
snake[len-1]=(int *)malloc(sizeof(int)* 2);
apple[0]= rand()% N+1;
apple[1]= rand()% N+1;
gotoxy(苹果[0],苹果[1]);
颜色(12);
coutltlt;;●;lt;lt;endl
gotoxy(N+5,3);
颜色(20);
coutltlt;scoreltlt;endl
}
if(Snake[0][1]= = 0 Snake[0][1]= = n Snake[0]= = 0 Snake[0][0]= = n)//撞上围栏后失败。
{
gotoxy(N/2,N/2);
颜色(30);
coutltlt;;游戏结束;lt;lt;endl
for(I = 0;iltleni++)
免费(snake[I]);
睡眠(无限);
退出(0);
}
}
返回0;
}