这是我们在Console应用程序中构建魔术盒游戏的一个示例,它应该从用户获取大小,然后生成用户输入的大小的矩阵,填充以1开头的数字根据这个角色的大小:
大小为3的示例输出屏幕:
Console.Clear();
int number;
do
{
Console.Write("Please Enter Odd Number :");
number=int.Parse(Console.ReadLine());
} while (number % 2 == 0);
Console.Clear();
Console.SetCursorPosition(25, 3);
int col = 0;
int row = 1;
double x = (number / 2) + 1;
col = (int)x;
Console.SetCursorPosition(col*3 + 25, row + 3);
Console.Write(1);
for (int i = 1; i < number*number; i++)
{
if (i % number != 0)
{
if (col==1)
{
col = number;
}
else
{
col--;
}
if (row == 1)
{
row = number;
}
else
{
row--;
}
Console.SetCursorPosition(col*3 + 25, row+3);
Console.Write(i+1);
}
else if (i % number == 0)
{
if (row == number)
{
row = 1;
}
else
{
row++;
}
Console.SetCursorPosition(col *3+ 25, row + 3);
Console.Write(i+1);
}
}
Console.SetCursorPosition(27, 27);
我真正不明白的是,当我们设定位置时,为什么多次col 3倍于25?!