怎么输入这个表格里面的数独表盘呢? 键盘输入直接填阿拉伯数字9个一组用空格隔开不行,一串直接输入也不行
先看运行效果:
示例代码如下(请自行按照具体业务逻辑处理):
using System;
using System.Linq;
namespace ConsoleApp2
{
internal class Program
{
static void Main(string[] args)
{
const int rows = 3;
const int columns = 3;
var arr = new int[rows, columns];
Console.WriteLine($"程序已就绪,请输入[{rows}x{columns}]的数独初盘...");
for (var row = 0; row < rows; row++)
{
var input = Console.ReadLine();
var isInputCorrect = false;
do
{
if (string.IsNullOrEmpty(input))
{
Console.WriteLine($"第{row}行输入不正确,请重新输入");
continue;
}
if (input.ToLower() == "exit")
{
break;
}
var numbers = input.Split(new[] { " " }, StringSplitOptions.RemoveEmptyEntries)
.Select(int.Parse).ToArray();
if (numbers.Length != columns)
{
Console.WriteLine($"第{row}行输入不正确,请重新输入");
input = Console.ReadLine();
}
else
{
isInputCorrect = true;
for (var column = 0; column < columns; column++)
{
arr[row, column] = numbers[column];
}
}
} while (!isInputCorrect);
}
Console.WriteLine("输入完成:");
for (var i = 0; i < rows; i++)
{
for (var j = 0; j < columns; j++)
{
Console.Write($"{arr[i, j]} ");
}
Console.WriteLine();
}
Console.ReadKey();
}
}
}