Вам нужно заполнить матрицу 9 * 9
, основанную на 81
количестве входов.Как уже упоминалось, вам нужно выделить еще один символ для окончания '\0'
.Именно этим и славится массив в стиле C.
int i = 0, row = 0, col = 0;
// set matrix row by row
for (row = 0; row < 9; row++)
{
// for each row, set from left to right
for (col = 0; col < 9; col++)
{
input2[row][col] = input[i++];
}
}
Улучшение : вам не нужно предварительно выделять строку для хранения этих 81
символов.Вы можете напрямую установить желаемый результирующий массив.
int i = 0, row = 0, col = 0;
// set matrix row by row
for (row = 0; row < 9; row++)
{
// for each row, set from left to right
for (col = 0; col < 9; col++)
{
scanf("%c", &input2[row][col]);
}
}