#include#include#include#include///*
// //1.牆: ■
// //0.空地 :兩個空格
// //3.目的地 ☆
// //4.箱子 ★
// //5:人 ※
// //3+4:箱子到達目的地 ●
//*/
int map[8][8] = ;
void gotoxy(int x, int y) //游標移動到(x,y)位置,在遊戲中列印一張畫面後將游標拉到(x,y)處進行列印。
int main(void)
}printf("\n");
} //定位
int i;
int j;
for (i = 0; i < 8; i++)
}if (map[i][j] == 5 || map[i][j] == 8)
}printf("%d%d", i, j);
char userkey = _getch();
switch (userkey)
else if (map[i - 1][j] == 4 && (map[i - 2][j] == 0 || map[i - 2][j] == 3))
else if (map[i - 1][j] == 7 && map[i - 2][j] == 0)
break;
case 's':
case 's':
case 80:
if (map[i + 1][j] == 0 || map[i + 1][j] == 3)
else if (map[i + 1][j] == 4 && (map[i + 2][j] == 0 || map[i + 2][j] == 3))
else if (map[i + 1][j] == 7 && map[i + 2][j] == 0)
break;
case 'a':
case 'a':
case 75:
if (map[i][j - 1] == 0 || map[i][j - 1] == 3)
else if (map[i][j - 1] == 4 && (map[i][j - 2] == 0 || map[i][j - 2] == 3))
else if (map[i][j - 1] == 7 && map[i][j - 2] == 0)
break;
case 'd':
case 'd':
case 77:
if (map[i][j + 1] == 0 || map[i][j + 1] == 3)
else if (map[i][j + 1] == 4 && (map[i][j + 2] == 0 || map[i][j + 2] == 3))
else if (map[i][j + 1] == 7 && map[i][j + 2] == 0)
break;
} }return 0;
}
#include#include#include#include//模組設計理念:盡量避免功能交叉,做到高內聚,底耦合。
///*
// //1.牆: ■
// //0.空地 :兩個空格
// //3.目的地 ☆
// //4.箱子 ★
// //5:人 ※
// //3+4:箱子到達目的地 ●
//*/
int cas = 0;
int map[3][8][8] = ;
void gotoxy(int x, int y) //游標移動到(x,y)位置,在遊戲中列印一張畫面後將游標拉到(x,y)處進行列印。
void drawgraph()
} printf("\n"); }}
void keydown()
} if (map[cas][i][j] == 5 || map[cas][i][j] == 8)
}printf("%d%d", i, j);
char userkey = _getch();
switch (userkey)
else if (map[cas][i - 1][j] == 4 || map[cas][i - 1][j] == 7)
}break;
case 's':
case 's':
case 80:
if (map[cas][i + 1][j] == 0 || map[cas][i + 1][j] == 3)
else if (map[cas][i + 1][j] == 4 || map[cas][i + 1][j] == 7)
}break;
case 'a':
case 'a':
case 75:
if (map[cas][i][j - 1] == 0 || map[cas][i][j - 1] == 3)
else if (map[cas][i][j - 1] == 4 || map[cas][i][j - 1] == 7)
}break;
case 'd':
case 'd':
case 77:
if (map[cas][i][j + 1] == 0 || map[cas][i][j + 1] == 3)
else if (map[cas][i][j + 1] == 4 || map[cas][i][j + 1] == 7)
}break; }}
int gameover()
} }return flag;
}int main(void)
} }system("cls");
printf("victory\n");
return 0;
}
15 07 09 二維陣列 推箱子小遊戲
1 int a 2,b 1 人的初始座標 2 region 造地圖 3int map new int 10,10 5 6 7 8 9 10 11 12 13 14 15 endregion 16 region 顯示地圖 17for int x 0 x 10 x 1826 if map x,y 0 2...
c 語言 通過二維陣列實現推箱子小遊戲
main.c 05推箱子 created by liuan on 2019 7 9.include define rows 10 define cols 11 地圖陣列,用來把村地圖上每乙個格仔的型別 char map rows cols 小人 當前所在的行座標 預設在第三行 二列 int pers...
二維陣列與二維指標
1.二維陣列的儲存是線性的,可以通過一維指標的方式訪問。如一下 int map 5 5 int mapd map 0 0 則 map i j mapd i 5 j 而利用二維陣列線性儲存的特性,可以將二維陣列當作一維指標方便的在函式之間傳遞 如 將乙個二維陣列賦值給乙個動態二維陣列,引數設定為一維指...