c语言:设计一个五子棋游戏,无需人机对战,只要人人对战就可以。

每次接受用户输入的坐标,填入棋盘中(用+表示),棋子用“w”和“b”表示。在打印棋谱的时候除了问题,原本打算逐行打印,但发现这样就无法区分w,b。求更好的算法!!!急!!!

第1个回答  2011-09-10
把一个棋盘看着一个矩阵.如25行25列.用二维数组arry[25][25]表示,初始化数组所有数据为0;当用户1 在某个arry[i][j]位置输下子后,将arry[i][j]=1;赋值1,用户2下子的位置arry[i][j]=2;同时我们还可以设置一个标识数组,来识别某个位置是否下子了.flag[25][25]={0};初始化.0;
当用户1在arry[i][j]处下子后同时把falg[i][j]=1;来标识该处已经下子了.所以下次就不能再在此处下子.如要打印出棋谱只需吧arry[i][j]打印出来, 为1的地方就是w ,,,为2的地方就是b,,为0的地方表示该处未下子..本回答被提问者采纳
相似回答