用C#写一个3*3的数独小游戏
时间: 2024-06-09 12:07:49 浏览: 7
以下是一个简单的3*3数独小游戏的C#代码:
```csharp
using System;
class Sudoku
{
static int[,] board = new int[3, 3]; // 数独棋盘
static void Main()
{
// 初始化数独棋盘
board[0, 0] = 1;
board[0, 1] = 2;
board[0, 2] = 3;
board[1, 0] = 2;
board[1, 1] = 3;
board[1, 2] = 1;
board[2, 0] = 3;
board[2, 1] = 1;
board[2, 2] = 2;
// 游戏循环
while (true)
{
// 显示数独棋盘
Console.Clear();
Console.WriteLine(" 1 2 3");
Console.WriteLine(" +-+-+-+");
for (int i = 0; i < 3; i++)
{
Console.Write(i + 1 + "|");
for (int j = 0; j < 3; j++)
{
if (board[i, j] == 0)
{
Console.Write(" ");
}
else
{
Console.Write(board[i, j]);
}
Console.Write("|");
}
Console.WriteLine();
Console.WriteLine(" +-+-+-+");
}
// 获取用户输入
Console.Write("请输入行数:");
int row = int.Parse(Console.ReadLine()) - 1;
Console.Write("请输入列数:");
int col = int.Parse(Console.ReadLine()) - 1;
Console.Write("请输入数字:");
int num = int.Parse(Console.ReadLine());
// 检查用户输入是否合法
if (row >= 0 && row < 3 && col >= 0 && col < 3 && num >= 1 && num <= 3 && board[row, col] == 0)
{
// 检查行和列是否有重复数字
for (int i = 0; i < 3; i++)
{
if (board[row, i] == num || board[i, col] == num)
{
Console.WriteLine("行或列有重复数字,请重新输入!");
Console.ReadLine();
break;
}
}
// 检查宫内是否有重复数字
int startRow = row / 3 * 3;
int startCol = col / 3 * 3;
for (int i = startRow; i < startRow + 3; i++)
{
for (int j = startCol; j < startCol + 3; j++)
{
if (board[i, j] == num)
{
Console.WriteLine("宫内有重复数字,请重新输入!");
Console.ReadLine();
break;
}
}
}
// 更新数独棋盘
board[row, col] = num;
}
else
{
Console.WriteLine("输入不合法,请重新输入!");
Console.ReadLine();
}
}
}
}
```
这个程序使用一个二维数组来表示数独棋盘,然后在游戏循环中,先显示数独棋盘,再让用户输入行、列和数字。如果用户输入合法,就检查行、列和宫内是否有重复数字,如果都没有重复数字,就更新数独棋盘。如果用户输入不合法,就提示错误并让用户重新输入。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)