问题及代码:
#include <stdio.h>
#include <windows.h>
#include<conio.h>
#define FrameX 4 //游戏窗口左上角的X轴坐标
#define FrameY 4 //游戏窗口左上角的Y轴坐标
#define Frame_height 20//游戏窗口的高度
#define Frame_width 20//游戏窗口的宽度
//HANDLE g_hout;
int i;
//光标移到指定位置
void GamePosition(HANDLE g_hout,int x,int y)
{
COORD pos;
pos.X=x;//横坐标
pos.Y=y;//纵坐标
SetConsoleCursorPosition(g_hout,pos);
}
void Set_TextColor_Green (void)
{
HANDLE Handle = GetStdHandle(STD_OUTPUT_HANDLE);//red
SetConsoleTextAttribute(Handle, FOREGROUND_INTENSITY | FOREGROUND_GREEN);
}
//制作游戏窗口
void make_frame()
{
HANDLE hout=GetStdHandle(STD_OUTPUT_HANDLE);
GamePosition(hout,FrameX+2*Frame_width+3,FrameY+13);
printf("Esc 退出游戏");
GamePosition(hout,FrameX+2*Frame_width+3,FrameY+15);
printf("长按方向键:加速");
GamePosition(hout,FrameX,FrameY); //打印框角
printf("┏");
GamePosition(hout,FrameX+2*Frame_width-2,FrameY);
printf("┓");
GamePosition(hout,FrameX,FrameY+Frame_height);
printf("┗");
GamePosition(hout,FrameX+2*Frame_width-2,FrameY+Frame_height);
printf("┛");
for(i=2;i<2*Frame_width-2;i+=2)
{
GamePosition(hout,FrameX+i,FrameY);
printf("━"); //打印上横框 =
}
for(i=2;i<2*Frame_width-2;i+=2)
{
GamePosition(hout,FrameX+i,FrameY+Frame_height);
printf("━"); //打印下横框
}
for(i=1;i<Frame_height;i++)
{
GamePosition(hout,FrameX,FrameY+i);
printf("┃"); //打印左竖g框
}
for(i=1;i<Frame_height;i++)
{
GamePosition(hout,FrameX+2*Frame_width-2,FrameY+i);
printf("┃"); //打印右竖框
}
GamePosition(hout,FrameX+Frame_width-10,FrameY-2); //打印游戏名称
Set_TextColor_Green (); //设置蛇为绿色
printf("时缔——贪吃蛇游戏");
}
int main()
{
make_frame();
getch(); //需要conio.h头文件
return 0;
}
运行结果: