[¹è¿­]2Â÷¿ø ¹è¿­ ȸÀü //------------------------1--------------------------- ¡Ú ±æÀÌ°¡ 4¡¿4ÀÎ intÇü 2Â÷¿ø ¹è¿­À» ¼±¾ðÇÏ°í, ¸ðµç ¿ä¼Ò¸¦ ¾Æ·¡ÀÇ ÁÂÃø ÃÖÃÊÇüÅ·ΠÃʱâÈ­ÇÏ¿© °¢ ¿ä¼ÒµéÀ» 90µµ¾¿ ȸÀü½ÃÄÑ ÃÖÁ¾ ÇüÅ·Π±¸¼º int main(void) { int arr[4][5]={ { 1, 2, 3, 4}, { 5, 6, 7, 8}, { 9, 10, 11, 12}, {13, 14, 15, 16} }; int temp[4][4]; int a, b; int i; // ¼¼·Î ÇÑ°è i = sizeof(arr)/sizeof(arr[0]); //¼¼·Î Å©±â °è»ê //¡Ú°¡·ÎÅ©±â´Â ´Ü, Á¤4¸éü·Î »óÁ¤ //------------¡ÚÃÖÃÊÃâ·Â--------------- for(a=0; a < i; a++) { for(b=0; b < 5; b++) { printf("%2d ", arr[a][b]); } printf("\n"); } printf("-----------------------\n"); //¡áȸÀü1 for(a=0; a < i; a++) { for(b=0; b < i; b++) { temp[b][3-a]=arr[a][b]; // 1) ¡Úa,b ¡æb,a Á¾È¾º¯°æ // 2) ÃÖÃÊÀ§Ä¡¿¡¼­ 3Ä­ À̵¿ÀÇ ÀÇ¹Ì } // 3) temp[b][3-a]°æ¿ì ¿ìÃø 1ȸÀü } // 4) temp[3-b][a]°æ¿ì ¿ìÃø 3ȸÀü // 5) temp[b][a]°æ¿ì °¡·Î°¡ ¼¼·Î Á¤·ÄÇÔ //¡áȸÀü2 for(a=0; a < i; a++) { for(b=0; b < i; b++) { arr[a][b]=temp[a][b]; //¡Ú¿ª¹è¿­¡æÁ¤¹è¿­ Àüȯ } } //¡áÃâ·Â for(a=0; a < i; a++) { for(b=0; b < i; b++) { printf("%2d ", arr[a][b]); //¡ÚÁ¤¹è¿­·Î Ãâ·Â } printf("\n"); } return 0; }
Ãâ·Â °á°ú
 1  2  3  4
 5  6  7  8
 9 10 11 12
13 14 15 16

13  9  5  1
14 10  6  2
15 11  7  3
16 12  8  4
//------------------------±³°ú¼­ Á¤´ä--------------------------- void sos1(int arr[][4]); void sos2(int (*arr)[4]); 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, num; // num : ¼¼·Î°ø½Ä¿¡ »ç¿ë num = sizeof(arr)/sizeof(arr[0]); //¡Ú¼¼·Î°ø½Ä ÁöÁ¤ for(i=0; i < num; i++) //¡Ú (1)¿ìÃøȸÀüÀ¸·Î À§ÇØ 1ȸ¾¿ Àü¼Û { sos1(arr, num); sos2(arr, num); } return 0; } void sos2(int arr[][4], int num) //¡Ú¡Úmain °ªÀ» º¯È¯ ¡Ú¨è¡Ú { int i, j; int temp[4][4]; //¡Ú Àӽà ÀúÀå¼Ò ÁöÁ¤ for(i=0; i < num; i++) //¡Ú Àӽà ÀúÀå¼Ò¿¡ º»·¡°ªÀ» ´ëÀÔ { for(j=0; j < num; j++) { temp[j][3-i] = arr[i][j]; //¡Ú°ªÀ» ¿ªÀ¸·Î º¯È¯ÇÏ¿© 3¹ÙÀÌÆ®¾¿ ȸÀüÇÏ¿© ÀúÀå } } for(i=0; i < num; i++) //¡Ú Àӽà ÀúÀå¼Ò °ªÀ» º»·¡ °ª¿¡ ´Ù½Ã Àû¿ë { for(j=0; j < num; j++) { arr[i][j]= temp[i][j]; } } } void sos1(int (*arr)[4], int num) //¡Ú¡Ú º¯°æ °ª Ãâ·Â ¡Ú¨é¡Ú { //¡Ú (2) 1ȸ¾¿ Àü¼ÛÀ» ¹Þ¾Æ ¿ìÃø ȸÀü int i, j; printf("-------- ¿ìÃøȸÀü --------\n"); for(i=0; i < num; i++) { for(j=0; j < num; j++) { printf("%3d", arr[i][j]); // ¿ìÃø±âÁØ Á¤·Ä } printf("\n"); } printf("\n"); }
Ãâ·Â °á°ú
 1  2  3  4
 5  6  7  8
 9 10 11 12
13 14 15 16
--------------------
13  9  5  1
14 10  6  2
15 11  7  3
16 12  8  4
--------------------
16 15 14 13
12 11 10  9
 8  7  6  5
 4  3  2  1
--------------------
 4  8 12 16
 3  7 11 15
 2  6 10 14
 1  5  9 13