bool isRowFull(char[,] array, int row)
{
for(int i=0;i<array.GetLength(0); i++)
if(array[row, i] == 'O') return false;
return true;
}
И вы можете назвать это как:
bool isFull = isRowFull(board, 3); // check if row 3 is full
или
if(isRowFull(board, 3))
{
//your code
}
Чтобы получить первый NonFull ряд:
int FirstNonFull(char[,] array)
{
for(int i=0;i<array.GetLength(1);i++)
if(!isRowFull(array, i)) return i;
return -1; // -1 indicating that all rows are full (not found)
}