가 여기 내 찔러입니다 : : 그렇지 않으면 당신은 그냥 수행하는 코드를 작성할 수
static void Spiral(int[,] m)
{
int n = m.GetUpperBound(0);
for (int i = 0; i < n/2; ++i)
{
for (int j = i; j <= n - i; ++j)
Console.Write(m[i, j] + " ");
for (int j = i + 1; j <= n - i; ++j)
Console.Write(m[j, n - i] + " ");
for (int j = i + 1; j <= n - i; ++j)
Console.Write(m[n - i, n - j] + " ");
for (int j = i + 1; j < n - i; ++j)
Console.Write(m[n - j, i] + " ");
}
Console.Write(m[n/2, n/2]+" ");
if (n % 2 == 1)
{
Console.Write(m[n/2, n/2+1] + " ");
Console.Write(m[n/2+1, n/2+1] + " ");
Console.Write(m[n/2+1, n/2] + " ");
}
}
static void Main(string[] args)
{
int[,] myArray = new int[,]{
{11, 12, 13, 14, 15},
{21, 22, 23, 24, 25},
{31, 32, 33, 34, 35},
{41, 42, 43, 44, 45},
{51, 52, 53, 54, 55}
};
Spiral(myArray);
}
을 출력은 다음과 같습니다
11 12 13 14 15 25 35 45 55 54 53 52 51 41 31 21 22 23 24 34 44 43 42 32 33
편집 : 두도 및 크기의 이상한 작동 이제 정사각형 행렬.
문제가 무엇인지 더 구체적으로 밝히고 이미 시도한 것을 보여줄 필요가 있습니다. –
무엇을 시도 했습니까? 기꺼이 도와 드리 겠지만 먼저 작업을해야합니다. –
그렇다면이 질문이 진짜 질문이 아니기 때문에 왜 닫혔습니까? 무슨 일이 벌어지고 있는지 분명하게 알 수 있습니다. 나는 네가 이걸 막을 때 총을 들른 것 같아. –