#include<stdio.h> int map[4][4]={0,0,0,1, 0,0,1,1, 0,0,1,0, 0,1,0,0}; int mx[4]={0,0,1,-1}; int my[4]={1,-1,0,0}; typedef struct node { int x; int y;}node; node dui[1000]; int tou=0; int wei=1; void change() { int nx; int ny; dui[tou].x=0; dui[tou].y=3; map[0][3]=2; while(tou<wei) { for(int i=0;i<4;i++) { nx=dui[tou].x +mx[i]; ny=dui[tou].y +my[i]; if(nx>=0&&nx<4&&ny>=0&&ny<4&&map[nx][ny]==1) { map[nx][ny]=2; dui[wei].x =nx; dui[wei].y =ny; wei++; } } tou++; } } int main() { change(); for(int i=0;i<4;i++) { for(int j=0;j<4;j++) { printf("%d",map[i][j]); } printf("\n"); } return 0; }