반응형
#include<stdio.h> //20장 도전1 2차배열 값을 90도로 회전하여 출력
int main(void)
{
int arr[4][4] = {{ 1,2,3,4 }, { 5,6,7,8 }, { 9,10,11,12 }, { 13,14,15,16 }};
int i,j;
for (j = 0;j < 4;j++)
{
for (i = 0;i < 4;i++)
printf("%4d", arr[j][i]);
printf("\n");
}
printf(" 한번 회전 \n");
Rotation(arr);
printf(" 두번 회전 \n");
Rotation(arr);
printf(" 세번 회전 \n");
Rotation(arr);
return 0;
}
int Rotation(int (*arr)[4])
{
int i, j;
int* arrB[4][4];
for (i = 0;i < 4;i++) //임시로 arrB배열에 회전값을 저장
for (j = 0;j < 4;j++)
arrB[j][3-i] = arr[i][j];
for (i = 0;i < 4;i++) //다시 arr배열에 저장
for (j = 0;j < 4;j++)
arr[i][j] = arrB[i][j];
for (j = 0;j < 4;j++) //출력
{
for (i = 0;i < 4;i++)
printf("%4d", arr[j][i]);
printf("\n");
}
return 0;
}
반응형
'STUDY' 카테고리의 다른 글
20장 도전2. 달팽이배열 (0) | 2017.02.23 |
---|---|
C언어 포인터의 포인터 (0) | 2017.02.21 |
17장 포인터의 포인터, 포인터 배열 연습 (0) | 2017.02.20 |
17-1 (0) | 2017.02.19 |