陣列 12 簡易連連看 20

2021-06-29 00:28:18 字數 1814 閱讀 8302

本題要求實現乙個簡易連連看遊戲模擬程式。

給定乙個2nx2n的方陣網格遊戲盤面,每個格仔中放置一些符號。這些符號一定是成對出現的,同乙個符號可能不止一對。程式讀入玩家給出的一對位置(x1, y1)、(x2, y2),判斷這兩個位置上的符號是否匹配。如果匹配成功,則將兩個符號消為「*」並輸出消去後的盤面;否則輸出「uh-oh」。若匹配錯誤達到3次,則輸出「game over」並結束遊戲。或者當全部符號匹配成功,則輸出「congratulations!」,然後結束遊戲。

輸入格式:

輸入在一行中給乙個正整數n(<5)。隨後2n行,每行2n個大寫英文本母(其間以1個空格分隔),表示遊戲盤面。盤面之後給出乙個正整數k,隨後k行,每行按照格式「x1 y1 x2 y2」給出乙個玩家的輸入。注意格仔的行、列編號是從1到2n。

輸出格式:

根據玩家的每一步輸入,輸出相應的結果。輸出盤面時注意,每行字元間以1個空格分隔,行末不得有多餘空格。

輸入樣例1:

2

i t i t

y t i a

t a t y

i k k t

111 1 1 3

4 2 4 3

3 1 4 2

2 2 1 2

3 1 2 4

4 4 3 1

2 1 3 4

3 3 1 4

4 1 2 3

2 4 3 2

1 1 2 2

輸出樣例1:
* t * t

y t i a

t a t y

i k k t

* t * t

y t i a

t a t y

i * * t

uh-oh

* * * t

y * i a

t a t y

i * * t

uh-oh

* * * t

y * i a

* a t y

i * * *

* * * t

* * i a

* a t *

i * * *

* * * *

* * i a

* a * *

i * * *

* * * *

* * * a

* a * *

* * * *

congratulations!

輸入樣例2:
2

i t i t

y t i a

t a t y

i k k t

51 1 4 4

1 1 2 3

1 1 2 3

2 2 4 1

2 2 3 3

輸出樣例2:
uh-oh

* t i t

y t * a

t a t y

i k k t

uh-oh

uh-oh

game over

#include void print(char (*a)[10], int n);

int main()

{ int n, k, i, j, x1, y1, x2, y2;

int cnt = 0, wrong = 0;

char a[10][10];

scanf("%d", &n);

getchar();

n *= 2;

for (i=0; i

簡易連連看

本題要求實現乙個簡易連連看遊戲模擬程式。給定乙個2的方陣網格遊戲盤面,每個格仔中放置一些符號。這些符號一定是成對出現的,同乙個符號可能不止一對。程式讀入玩家給出的一對位置 x1,y1 x2,y2 判斷這兩個位置上的符號是否匹配。如果匹配成功,則將兩個符號消為 並輸出消去後的盤面 否則輸出 uh oh...

簡易連連看

本題要求實現乙個簡易連連看遊戲模擬程式。給定乙個2n 2n的方陣網格遊戲盤面,每個格仔中放置一些符號。這些符號一定是成對出現的,同乙個符號可能不止一對。程式讀入玩家給出的一對位置 x 1 y 1 x 2 y 2 判斷這兩個位置上的符號是否匹配。如果匹配成功,則將兩個符號消為 並輸出消去後的盤面 否則...

簡易連連看

problem sets 1329402848755699712 problems 1329407074437287937 注釋掉的 是用於除錯 map的邊界是試出來的,雖然我覺得x邊15就行,但題目好像不這麼認為 str的長度隨便,他只用來刷掉第一行scanf留在緩衝區的那一行 include i...