C 控制台 《迷宮》

2022-02-17 04:03:57 字數 2412 閱讀 9480

最近閒來無事,回顧一下以前學過的c#控制台小程式,特發此篇:

主體思路:利用二維陣列來實現。

效果圖:

首先:vs2010,建立控制台程式,

然後,新增類labyrinth,該類的**如下,

1

using

system;23

namespace迷宮4

, 9 ,

10 ,

11 ,

12 ,

13 ,

14 ,

15 ,

16 ,

17 ,

18};

19private

int x = 1, y = 1;//

當前小人座標

20private

bool flag = false;//

標誌是否找到出口

2122

public

labyrinth()

2327

28private

void display()//

顯示29

37console.writeline();38}

39}40private

void init()//

初始化小人

4144

private

void moveleft()//

左方向45

50if (map[x,y-1]=='*'

)5154 map[x,y]='';

55 y--;

56isfindexit();

57 map[x, y] = '0'

;58}59

private

void moveright()//

右方向60

65if (map[x,y+1]=='*'

)6669 map[x, y] = '';

70 y++;

71isfindexit();

72 map[x, y] = '0'

;73}74

75private

void moveup()//

上方向76

81if (map[x-1, y] == '*'

)8285 map[x, y] = '';

86 x--;

87isfindexit();

88 map[x, y] = '0'

;89}90

private

void movedown()//

下方向91

96if (map[x + 1, y] == '*'

)97100 map[x, y] = '';

101 x++;

102isfindexit();

103 map[x, y] = '0'

;104

}105

106private

void isfindexit()//

是否找到出口

107113

}114

private

void move(consolekey downkey)//

移動115

120if (downkey ==consolekey.d)

121124

if (downkey ==consolekey.w)

125128

if (downkey ==consolekey.s)

129132

}133

public

void start()//

遊戲開始

134146 display();//

顯示147

} 148

}149

}150 }

主程式**:

1

using

system;23

namespace迷宮4

13}14 }

C 基於控制台的迷宮實現(中)

路徑是由許多點組成的。因此表示路徑的struct中包含了起始點的指標和終止點的指標,以及該路徑中包含點的最大值。typedef struct mstack 對路徑的初始化實際上就是為路徑中的所有點分配空間。void initstack mstack s s top s base s stacksiz...

認識控制台 控制台控制代碼 附著到控制台 關閉控制台

1.附著到乙個控制台 乙個程序可以使用 attachconsole 函式來附著到乙個控制台上,乙個程序只能附著乙個控制台。乙個控制台可以有許多程序附著到它上面,呼叫 getconsoleprocesslist 函式可以得到附著到乙個控制台的列表。2.關閉乙個控制台 程序可以使用 freeconsol...

認識控制台 控制台控制代碼 附著到控制台 關閉控制台

附著到乙個控制台 乙個程序可以使用 attachconsole 函式來附著到乙個控制台上,乙個程序只能附著乙個控制台。乙個控制台可以有許多程序附著到它上面,呼叫 getconsoleprocesslist 函式可以得到附著到乙個控制台的列表。關閉乙個控制台 程序可以使用 freeconsole 函式...