본문 바로가기

SW Study/윤성우 C 프로그래밍

도전! 프로그래밍3. 도전 1

#include<stdio.h>

void Rotate(int (*arr)[4], int num)
{
   int tmp[4][4] = { 0 };
   int i, j, k;
   for (i = 0; i < num; i++)
   {
      for (j = 0; j < 4; j++)
         for (k = 0; k < 4; k++)
            tmp[k][3 - j] = arr[j][k];
      for (j = 0; j < 4; j++)
         for (k = 0; k < 4; k++)
            arr[j][k] = tmp[j][k];
   }

   for (i = 0; i < 4; i++)
   {
      for (j = 0; j < 4; j++)
         printf("%d ", arr[i][j]);
      printf("\n");
   }
   printf("\n");
}

int main(void)
{
   int num;
   int arr[4][4] = {
      { 1, 2, 3, 4 },
      { 5, 6, 7, 8 },
      { 9, 10, 11, 12 },
      { 13, 14, 15, 16 }
   };
   
   printf("Rotate Num: ");
   scanf("%d", &num);
   Rotate(arr, num);
   return 0;
}