黑马程序员技术交流社区
标题:
飞行棋图案始终无法对齐
[打印本页]
作者:
包连靖
时间:
2012-4-2 14:08
标题:
飞行棋图案始终无法对齐
本帖最后由 包连靖 于 2012-4-5 14:40 编辑
飞行棋的图案始终没法对齐,不知道为什么呀
无标题.png
(89.04 KB, 下载次数: 21)
下载附件
2012-4-2 14:12 上传
难道是因为我和视频里面用的特殊符号不一样?
汗,我后来把 for (int j = 0; j <29; j++) 里面的29改成了39就可以竖着下来了.不过视频里面是29呀..
我自己找了半天都没发现为什么要多10,求大神解答一下
作者:
徐刚
时间:
2012-4-2 18:54
你是不是Console.Write(" ")时输入的空格数不对,里面是两个空格。for(int j = 0; j <29; j++)绘制的是29个双空格,因为那些符号都是全角的,你输入的空格是半角的,所以对不齐了!我也刚写完飞行棋。
作者:
★心秒★
时间:
2012-4-2 20:40
把第一行第一个除开,那么第一行循环是for (int a=1; a < 30;a++ )
然后是第一个列,循环是for (int a = 30; a < 35;a++ )
第二行循环是:for (int a = 64; a > 34; a--)
第二列循环是:for (int a = 65; a < 70; a++)
组后一行循环:for (int a = 70; a < 100; a++)
至于空格,如果是半角的,就是五十八个空格,如果是全角的,就是29个空格。
你再试试……
作者:
徐瑞
时间:
2012-4-3 16:30
/// <summary>
/// 画地图
/// </summary>
public static void Drawmap()
{
for (int i = 0; i <= 29; i++)//第一行地图
{
Console.Write(Getmapstring(i));
}
//第二列地图
Console.WriteLine();
for (int i = 30; i <= 34; i++)
{
for (int j = 0; j <= 28; j++)
{
Console.Write(" ");
}
Console.WriteLine(Getmapstring(i));
}
//第三行地图
for (int i = 64; i >= 35; i--)
{
Console.Write(Getmapstring(i));
}
Console.WriteLine();
//第四列地图
for (int i = 65; i <= 69; i++)
{
Console.WriteLine(Getmapstring(i));
}
//第五行地图
for (int i = 70; i <= 99; i++)
{
Console.Write(Getmapstring(i));
}
Console.WriteLine();
可能是你画的列的时候 ConsoleWrite(" ");是两个半角空格
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2