2017. 1. 17. 20:02ㆍ잡다한 것
문제)4*4의 int형 2차원 배열 선언후, 90도씩 오른쪽으로 이동시켜서 다음과 같은 모양을 만들 것.
1,2,3,4 13,9,5,1 16,15,14,13 4,8,12,16
5,6,7,8 14,10,6,2 12,11,10,9 3,7,11,15
9,10,11,12 -> 15,11,7,3 -> 8,7,6,5 -> 2,6,10,14
13,14,15,16 16,12,8,4 4,3,2,1 1,5,9,13
#include<stdio.h>
void rotatearr(int(*a1)[4])
{
int temp[4][4];
int i, j;
for (i = 0; i < 4; i++)
{
for (j = 0; j < 4; j++)
temp[j][3 - i] = a1[i][j];
}
for (i = 0; i < 4; i++)
{
for (j = 0; j < 4; j++)
a1[i][j] = temp[i][j];
}
}
void showarr(int(*a1)[4])
{
int i, j;
for (i = 0; i < 4; i++)
{
for (j = 0; j < 4; j++)
printf("%d ",a1[i][j]);
printf("\n");
}
printf("\n");
}
int main(void)
{
int arr[4][4] = {
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 } };
rotatearr(arr);
showarr(arr);
return 0;
}
'잡다한 것' 카테고리의 다른 글
외장하드 '액세스할 수 없습니다' 해결법 (0) | 2017.06.19 |
---|---|
오류 0x80070091: 디렉터리가 비어 있지 않습니다 해결법 (0) | 2017.04.26 |
pdf 파일을 텍스트로 바꾸는 법 (0) | 2017.01.16 |
티스토리 초대장 배포합니다. (0) | 2016.12.29 |
2017년 휴일 (0) | 2016.12.07 |