请问能否解答一下,自己只写了一部分,剩下的想不出了

img


#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int shudu[9][9];
    cout << "请输入9*9的矩阵,值为1-9之间" << endl;
    for (int i = 0; i < 9; i++)
        for (int j = 0; j < 9; j++)
            cin >> shudu[i][j];
    for (int i = 0; i < 9; i++) 
    {
        for (int j = 0; j < 9; j++)
        {
        }
       
    }

    for (int i = 0; i < 9; i++)  
    {
        for (int j = 0; j < 9; j++)
        {

        }

       
    }

    for (int k = 0; k < 9; k = k + 3) 
    {
        for (int t = 0; t < 9; t = t + 3) 
        {
            for (int i = k; i < k + 3; i++)  
                for (int j = t; j < t + 3; j++)
                {
                }

            
        }
    }

    
    return 0;
}

提示一下,一共要判断27个条件 9个行,9个列,9个方块
可以用数组来确定大致代码如下

int shudu[9][9];
    int row[9][9]{0};//9个行,
    int col[9][9]{0};//9个列,
    int block[9][9]{ 0 };//9个方块。
    cout << "请输入9*9的矩阵,值为1-9之间" << endl;
    for (int i = 0; i < 9; i++)
        for (int j = 0; j < 9; j++)
            cin >> shudu[i][j];
    for(int i=0;i<9;i++)
        for (int j = 0; j < 9; j++) {
            if(++row[i][shudu[i][j]]>1)
                return false;
            if (++col[j][shudu[i][j]] > 1)
                return false;
            if (++block[(i / 3)*3 + j / 3][shudu[i][j]] > 1)
                return false;
        }