# include <stdio.h>
# include <string.h>
# include <conio.h>
# include <time.h>
# include "windows.h"
void SetCode(int num) //该函数通过传入的num值来判断并输出为:■,空格*2,或者数字本身
{
if(num==0)
printf("■");
else if(num==-1)
printf(" ");
else
printf("%d ",num);
}
void GoToXY(int x, int y) //用于在x,y位置输出用户头像
{
COORD pos={x,y}; //定义COORD结构的实例pos,初始化参数用x和y,即pos.x=x; pos.y=y;
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); //获得输出设备的句柄//输出设备的设备号是STD_OUTPUT_
SetConsoleCursorPosition(hOut, pos); //设置控制台光标位置
}
void SetWindow() //生成地图主体函数:遍历公共数组,在位置部位(1,1)时,调用SetCode函数,并在(1,1)位置输出玩家头像
{
int i,j;
char c=1;
int code[17][24]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,-1,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,
0,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,-1,0,0,0,0,0,-1,-1,-1,0,0,
0,-1,0,0,0,-1,0,0,0,0,0,0,0,-1,0,0,0,0,0,-1,0,0,0,0,
0,-1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1,0,-1,0,-1,-1,-1,-1,-1,-1,-1,0,0,
0,-1,0,0,-1,0,-1,0,0,0,0,-1,0,-1,-1,-1,0,0,0,0,0,0,0,0,
0,-1,-1,-1,-1,-1,-1,0,0,0,0,-1,0,0,0,-1,0,0,0,0,0,0,0,0,
0,-1,0,0,0,0,0,0,0,0,0,-1,0,0,0,-1,-1,-1,-1,-1,-1,-1,-1,0,
0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,-1,0,0,-1,0,0,0,0,
0,0,0,0,0,0,-1,0,0,0,0,0,0,0,-1,0,-1,0,0,-1,0,0,0,0,
0,0,0,0,0,0,-1,0,0,0,0,0,0,0,-1,0,-1,-1,-1,-1,0,-1,-1,0,
0,0,0,0,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0,0,-1,0,0,
0,0,0,0,0,-1,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,-1,0,0,
0,0,-1,-1,-1,-1,0,0,0,0,0,0,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,
0,-1,-1,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,
0,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
for(i=0;i<17;i++)
{
for(j=0;j<24;j++)
{
SetCode(code[i][j]);
}
printf("\n");
}
GoToXY(2,1);
printf("%c ",c);
}
int main()
{
SetWindow();
GoToXY(0,17);
return 0;
}
先根据题意做出了地图的框架
不知道对不对
后续会继续完善