9-1-³ª.¹è¿­ÀÇ Æ¯Â¡

¹è¿­Àº ±âº»Çü°ú´Â ´Þ¸® ¿©·¯ °³ÀÇ º¯¼ö¸¦ ÇϳªÀÇ À̸§À¸·Î ¸ð¾Æ ³õÀº °ÍÀÌ´Ù. ±×·¡¼­ ±âº»Çü º¯¼öµé°ú´Â ´Ù¸¥ ¸éÀÌ ¸¹´Ù. ¶ÇÇÑ CÀÇ ¹è¿­Àº ÆĽºÄ®À̳ª º£ÀÌÁ÷°°Àº °í±Þ ¾ð¾îÀÇ ¹è¿­°ú´Â ´Ù¸¥ µ¶Æ¯ÇÑ ¸éÀÌ ÀÖ´Ù. CÀÇ ¹è¿­ÀÌ ¾î¶² Ư¡À» °¡Áö´ÂÁö ¼ø¼­´ë·Î ¾Ë¾Æº¸µµ·Ï ÇÏÀÚ.

 

 ¹è¿­ ¿ä¼ÒÀÇ ¹øÈ£ÀΠ÷ÀÚ´Â Ç×»ó 0ºÎÅÍ ½ÃÀÛ(Zero Base)ÇÑ´Ù. ÄÄÇ»ÅÍÀÇ ¼¼°è¿¡¼­´Â 0ÀÌ ¾ðÁ¦³ª ù ¹ø° ¼ýÀÚÀÌ´Ù. ù ¹ø° ¿ä¼ÒÀÇ Ã·ÀÚ°¡ 1¹øÀÌ ¾Æ´Ï¶ó 0¹øÀ̱⠶§¹®¿¡ ¸¶Áö¸· ¿ä¼ÒÀÇ Ã·ÀÚ´Â ¹è¿­ÀÇ Å©±âº¸´Ù Ç×»ó Çϳª ´õ ÀÛ´Ù. arInt ¹è¿­ÀÇ Å©±â°¡ 5¶ó¸é ù ¹ø° ¹è¿­ ¿ä¼Ò´Â arInt[0]ÀÌ µÇ°í ¸¶Áö¸· ¹è¿­ ¿ä¼Ò´Â arInt[4]°¡ µÈ´Ù. arInt[5]¶ó´Â ¿ä¼Ò´Â Á¸ÀçÇÏÁö ¾Ê´Â´Ù.

½Ç»ýÈ°¿¡ »ç¿ëÇÏ´Â ÀÚ¿¬¼ö´Â Ç×»ó 1ºÎÅÍ ½ÃÀÛÇϱ⠶§¹®¿¡ ÷ÀÚÀÇ ¹øÈ£°¡ ½ÇÁ¦ ¹è¿­ÀÌ Ç¥ÇöÇÏ°íÀÚ ÇÏ´Â ´ë»ó°ú ÀÏÄ¡ÇÏÁö ¾Ê´Â °æ¿ì°¡ ÀÖ´Ù. ¿¹¸¦ µé¾î Çлý 30¸íÀÇ ¼ºÀûÀ» ÀúÀåÇÏ·Á¸é Å©±â 30ÀÇ Á¤¼öÇü ¹è¿­ÀÌ ÇÊ¿äÇÏ´Ù. ±×·¡¼­ int ar[30];À̶ó´Â ¹è¿­À» ¼±¾ðÇϴµ¥ À̶§ »ý¼ºµÇ´Â ¹è¿­ ¿ä¼Ò´Â ar[0]~ar[29]±îÁöÀ̹ǷΠ0¹ø ÷ÀÚ¿¡ 1¹ø ÇлýÀÇ ¼ºÀûÀ» ÀúÀåÇÏ°í 1¹ø ÷ÀÚ¿¡ 2¹ø ÇлýÀÇ ¼ºÀûÀ» ÀúÀåÇØ¾ß ÇÑ´Ù.

1¹ø ÇлýÀÇ ¼ºÀûÀ» 1¹ø ÷ÀÚ¿¡ ³ÖÀ¸¸é ÁÁ°ÚÁö¸¸ ¹è¿­ÀÇ ½ÃÀÛÀÌ 0¹øºÎÅÍÀ̹ǷΠn¹ø ÇлýÀÇ ¼ºÀûÀ» n-1¹ø ¿ä¼Ò¿¡ ÀúÀåÇØ¾ß ÇÏ´Â °ÍÀÌ´Ù. Çлý ¹øÈ£¿Í ¹è¿­ ÷ÀÚ°¡ ÀÏÄ¡ÇÏÁö ¾Ê±â ¶§¹®¿¡ °¡²û È¥¶õ½º·¯¿ï ¶§µµ ÀÖ°í ¶æÇÏÁö ¾Ê°Ô ½Ç¼ö¸¦ ÇÒ °æ¿ìµµ ÀÖ´Ù. ¸¸¾à ²À ÷ÀÚ ¹øÈ£¿Í Çлý ¹øÈ£¸¦ ÀÏÄ¡½ÃÅ°°í ½Í´Ù¸é int ar[31]; Å©±â·Î Çϳª ´õ ¿©À¯ÀÖ°Ô ¼±¾ðÇÑ ÈÄ 0¹ø ÷ÀÚ¸¦ »ç¿ëÇÏÁö ¾Ê°í ¹ö¸®¸é µÈ´Ù. ±×·¯³ª ½ÇÁ¦·Î ÀÌ·¸°Ô ÇÏ´Â °æ¿ì´Â µå¹®µ¥ ¿Ö³ÄÇÏ¸é °³¹ßÀÚµéÀº ÀϹÝÀεé°ú ´Þ¸® 0ÀÌ Á¤¼öÀÇ ½ÃÀÛÀ̶ó´Â °³³ä¿¡ Àͼ÷ÇØÁ® Àֱ⠶§¹®ÀÌ´Ù. ³»ºÎÀû °è»êÀº Ç×»ó 0ºÎÅÍ ½ÃÀÛÇ쵂 »ç¿ëÀÚ¿Í »óÈ£ÀÛ¿ëÇÒ ¶§¸¸ ÁÖÀÇÇÏ¸é µÈ´Ù.

 

¢º n ¹ø ÇлýÀÇ ¼ºÀûÀ» Ãâ·ÂÇÒ ¶§ : printf("%¹ø Çлý ¼ºÀûÀº %dÀÔ´Ï´Ù",n,ar[n-1]);

¢º ar[n]À» Ãâ·ÂÇÒ ¶§ : printf("%¹ø Çлý ¼ºÀûÀº %dÀÔ´Ï´Ù",n+1,ar[n]);

 

ÆĽºÄ®À̳ª ÃÖ±ÙÀÇ ½ºÅ©¸³Æ®°°Àº °í±Þ ¾ð¾îµéÀº ¹è¿­ ÷ÀÚÀÇ ½ÃÀÛ°ªÀ» »ç¿ëÀÚ°¡ Á÷Á¢ ÁöÁ¤ÇÒ ¼ö ÀÖµµ·Ï µÇ¾î ÀÖÁö¸¸ C´Â ±×·± ±â´ÉÀ» Á¦°øÇÏÁö ¾Ê´Â´Ù. ±»ÀÌ ÀÌÀ¯¸¦ ¹àÈ÷ÀÚ¸é ¹è¿­ÀÇ ¿ä¼Ò¸¦ ±¸Çϴ ÷ÀÚ ¿¬»êÀÌ µû·Î Á¤ÀǵǾî ÀÖÁö ¾Ê°í Æ÷ÀÎÅ͸¦ »ç¿ëÇÑ °£Á¢ÀûÀÎ ¿¬»êÀ¸·Î Á¤ÀǵǾî Àֱ⠶§¹®ÀÌ´Ù. ÷ÀÚ ¿¬»êÀÌ ´Ü¼øÇØÁö¸é ¹è¿­À» ÂüÁ¶ÇÏ´Â ¼Óµµ°¡ Àü¹ÝÀûÀ¸·Î »¡¶óÁö´Âµ¥ C´Â ÆíÀǼºº¸´Ù´Â ¼º´É À§ÁÖ·Î ¼³°èµÇ¾î ÀÖ´Ù.

 ¹è¿­ÀÌ Â÷ÁöÇÏ´Â ÃÑ ¸Þ¸ð¸®¾çÀº ¹è¿­ÀÇ Å©±â¿¡ ¹è¿­ ¿ä¼ÒÀÇ Å©±â¸¦ °öÇؼ­ ±¸ÇÒ ¼ö ÀÖ´Ù. Áï ¹è¿­ÀÇ ÃÑ Å©±â´Â sizeof(ŸÀÔ)*Å©±âÀÌ´Ù. int ar[5] ¹è¿­Àº Á¤¼öÇü º¯¼ö ´Ù¼¸ °³ÀÇ ÁýÇÕÀ̹ǷΠÁ¤¼öÇüÀÇ Å©±âÀÎ 4¿¡ ¹è¿­ Å©±â 5¸¦ °öÇÑ °á°úÀÎ 20¹ÙÀÌÆ®¸¦ Â÷ÁöÇÑ´Ù. ¹è¿­ Å©±â°¡ 5¶ó°í Çؼ­ 5¹ÙÀÌÆ®¸¦ Â÷ÁöÇÏ´Â °ÍÀÌ ¾Æ´Ï´Ù.

¹è¿­À» µ¿ÀÏÇÑ ´Ù¸¥ ¹è¿­¿¡ º¹»çÇϰųª ¸ðµç ¹è¿­ ¿ä¼Ò¸¦ ƯÁ¤ÇÑ °ªÀ¸·Î ä¿ì°í ½ÍÀ» ¶§´Â ¸Þ¸ð¸® º¹»ç¸¦ ÇØ¾ß Çϴµ¥ À̶§ º¹»çÇÒ ¹ÙÀÌÆ® ¼ö¸¦ Á¤È®ÇÏ°Ô °è»êÇØ¾ß ÇÑ´Ù. ¹è¿­ÀÇ ÃÑ ¹ÙÀÌÆ® ¼ö´Â sizeof ¿¬»êÀÚ·Î ½±°Ô ±¸ÇÒ ¼ö ÀÖÀ¸¹Ç·Î ÀÌ ¿¬»êÀÚ°¡ ±¸ÇØÁÖ´Â Å©±â¸¦ »ç¿ëÇÏ¸é µÈ´Ù. ¸¸¾à ¹è¿­ÀÇ Å©±â, ±×·¯´Ï±î ¿ä¼ÒÀÇ °³¼ö¸¦ ¾Ë°í ½Í´Ù¸é ´ÙÀ½ °ø½ÄÀ» »ç¿ëÇÑ´Ù.

 

¹è¿­ Å©±â=sizeof(¹è¿­)/sizeof(¹è¿­[0]);

 

¹è¿­ÀÇ ÃÑ ¹ÙÀÌÆ® ¼ö¸¦ ¹è¿­ ¿ä¼ÒÀÇ Å©±â·Î ³ª´©¸é ¿ä¼ÒÀÇ °³¼ö°¡ µÈ´Ù. ±¸Ã¼ÀûÀÎ ¿¹¸¦ µéÀÚ¸é int ar[5]ÀÇ Å©±â´Â sizeof(ar)/sizeof(ar[0])°¡ µÇ´Âµ¥ sizeof(ar)ÀÌ ¹è¿­ÀÇ ÃÑ ¹ÙÀÌÆ®¼öÀÎ 20ÀÌ°í ar[0]´Â Á¤¼öÇüÀ̹ǷΠ4·Î Æò°¡µÇ¸ç Àüü °è»ê½ÄÀº 5°¡ µÈ´Ù. sizeof ¿¬»êÀÚ´Â ÄÄÆÄÀϽÿ¡ °è»êµÇ¹Ç·Î ÀÌ ½ÄÀº ÄÄÆÄÀÏÇÒ ¶§ ÀÌ¹Ì °áÁ¤µÇ´Â »ó¼öÀÌ´Ù. sizeof(ar)/sizeof(int) µµ »ó¼ö³¢¸®ÀÇ ³ª´°¼ÀÀ̹ǷΠ¸¶Âù°¡Áö·Î »ó¼öÀÌ´Ù. ±×·¡¼­ sizeof ¿¬»êÀÚ¸¦ ¸¹ÀÌ ¾´´Ù°í Çؼ­ ÇÁ·Î±×·¥ÀÌ ´À·ÁÁöÁö´Â ¾Ê´Â´Ù.

¹è¿­Àº ¼±¾ðÇÒ ¶§ Å©±â¸¦ ÁöÁ¤ÇϹǷΠÀÌ¹Ì ±× Å©±â¸¦ ¾Ë°í Àִµ¥ ¿Ö ÀÌ·± °ø½ÄÀÌ ÇÊ¿äÇÒ±î? ¹è¿­ÀÇ Å©±â°ªÀ» Äڵ忡¼­ »ó¼ö·Î ¹Ù·Î ÂüÁ¶ÇÏ¸é ¹è¿­ Å©±â°¡ ¹Ù²ð ¶§¸¶´Ù Äڵ带 ¼öÁ¤ÇØ¾ß ÇÏÁö¸¸ sizeof ¿¬»ê½ÄÀ» »ç¿ëÇϸé ÄÄÆÄÀÏ·¯°¡ °è»êÇϹǷΠÆí¸®ÇÏ´Ù. ¶ÇÇÑ ¹è¿­ ÃʱâÈ­ ¹æ¹ý Áß¿¡ ¹è¿­ Å©±â¸¦ »ý·«ÇÏ´Â ¹æ¹ýÀÌ Àִµ¥ ÀÌ·¸°Ô Á¤ÀÇÇÑ ¹è¿­ Å©±â¸¦ ÄÄÆÄÀÏ·¯°¡ ¾Ë¾Æ¼­ ±¸Çϵµ·Ï Çϱâ À§ÇØ ÀÌ °ø½ÄÀ» ¸¹ÀÌ »ç¿ëÇÑ´Ù.

 ¹è¿­À» ¼±¾ðÇÒ ¶§ Å©±â°ªÀº ¹Ýµå½Ã »ó¼ö·Î ÁÖ¾î¾ß ÇÑ´Ù. ÇÏÁö¸¸ ¹è¿­ÀÌ ÀÏ´Ü ¸¸µé¾îÁö°í ³ª¸é ÷ÀÚ·Î º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ar ¹è¿­ÀÇ Ã¹ ¹ø° ¿ä¼Ò°ªÀ» ¾Ë°í ½ÍÀ¸¸é ar[0]¸¦ ÀÐ°í µÎ ¹ø° ¿ä¼ÒÀÇ °ªÀ» ¾Ë°í ½ÍÀ¸¸é ar[1]À» ÀÐÀ¸¸é µÈ´Ù. °ýÈ£¾È¿¡ Á¶»çÇÒ ¿ä¼ÒÀÇ Ã·ÀÚ ¹øÈ£¸¦ »ó¼ö·Î ÁöÁ¤Çϴµ¥ ÀÌ ÀÚ¸®¿¡ º¯¼ö¸¦ ¾µ ¼öµµ ÀÖ´Ù. ¸¸¾à i¶ó´Â º¯¼ö°ªÀ» ÷ÀÚ·Î »ç¿ëÇÏ°í ½Í´Ù¸é ar[i]·Î ÀÐÀ¸¸é µÈ´Ù.

´Ù¸¥ º¯¼ö¸¦ ÷ÀÚ·Î »ç¿ëÇÏ¿© ¹è¿­ ¿ä¼Ò¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù´Â Á¡ÀÌ ¹è¿­ÀÇ °¡Àå Å« ÀåÁ¡À̶ó ÇÒ ¼ö ÀÖ´Ù. ·çÇÁÀÇ Á¦¾î º¯¼ö¸¦ ÷ÀÚ·Î »ç¿ëÇÏ¸é ¹è¿­ÀÌ ¾Æ¹«¸® Å©´õ¶óµµ ¸ðµç ¹è¿­ ¿ä¼Ò¿¡ ´ëÇØ ¹Ýº¹ÀûÀΠ󸮰¡ °¡´ÉÇØÁø´Ù. ´ÙÀ½ ¿¹´Â ar ¹è¿­ÀÇ ¸ðµç ¿ä¼Ò¸¦ 0À¸·Î ¸¸µç´Ù.

 

for (i=0;i<5;i++) ar[i]=0;

 

i°¡ 0¿¡¼­ 4±îÁö ¹Ýº¹µÇ¸ç ar[i]¿¡ ¸ðµÎ 0À» ´ëÀÔÇÔÀ¸·Î½á ar[0]ºÎÅÍ ar[4]±îÁö ¸ðµÎ 0À¸·Î ÃʱâÈ­ÇÏ´Â ÄÚµåÀÌ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¹è¿­À» »ç¿ëÇÏ¿© Çлý 5¸íÀÇ ¼ºÀûÀ» ÀÔ·Â¹Þ¾Æ ¹è¿­¿¡ ÀúÀåÇÑ ÈÄ ÃÑÇÕ°ú Æò±ÕÀ» ±¸ÇØ Ãâ·ÂÇÑ´Ù.

 

¿¹ Á¦ : Array

#include <Turboc.h>

 

void main()

{

     int arScore[5];

     int i;

     int sum;

 

     for (i=0;i<sizeof(arScore)/sizeof(arScore[0]);i++) {

          printf("%d¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇϼ¼¿ä : ",i+1);

          scanf("%d",&arScore[i]);

     }

 

     sum=0;

     for (i=0;i<sizeof(arScore)/sizeof(arScore[0]);i++) {

          sum+=arScore[i];

     }

 

     printf("\nÃÑÁ¡Àº %dÁ¡ÀÌ°í Æò±ÕÀº %dÁ¡ÀÔ´Ï´Ù.\n",

          sum,sum/(sizeof(arScore)/sizeof(arScore[0])));

}

 

½ÇÇàÇØ º¸ÀÚ. ¼ºÀû ´Ù¼¸ °³¸¦ ÀÔ·ÂÇϸé ÀÔ·ÂµÈ ¼ºÀûÀÇ Åë°èÄ¡¸¦ ±¸ÇØ Ãâ·ÂÇÑ´Ù.

 

1¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇϼ¼¿ä : 78

2¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇϼ¼¿ä : 85

3¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇϼ¼¿ä : 69

4¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇϼ¼¿ä : 92

5¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇϼ¼¿ä : 70

 

ÃÑÁ¡Àº 394Á¡ÀÌ°í Æò±ÕÀº 78Á¡ÀÔ´Ï´Ù.

 

Çлý¼ö°¡ 5¸íÀ̹ǷΠÁ¡¼ö ¹è¿­ arScoreÀÇ Å©±âµµ 5·Î ¼±¾ðÇß´Ù. i Á¦¾îº¯¼ö·Î 0~4±îÁö ·çÇÁ¸¦ µ¹¸ç Çлý 5¸íÀÇ Á¡¼ö¸¦ ÀÔ·Â¹Þ¾Æ arScore ¹è¿­¿¡ ÀúÀåÇÑ´Ù. Çлý ¹øÈ£´Â ¹è¿­ÀÇ Ã·ÀÚ ¹øÈ£º¸´Ù Ç×»ó 1´õ Å©¹Ç·Î ÀÔ·Â ¿ä±¸ ¸Þ½ÃÁöÀÇ Çлý ¹øÈ£´Â i+1À̾î¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ÀÖÁöµµ ¾ÊÀº 0¹ø ÇлýÀÇ ¼ºÀûÀ» ÀÔ·ÂÇ϶ó´Â ¸Þ½ÃÁö°¡ Ãâ·ÂµÉ °ÍÀÌ´Ù.

5¸íÀÇ ¼ºÀûÀ» ÀԷ¹ÞÀº ÈÄ ´Ù½Ã ·çÇÁ¸¦ µ¹¸é¼­ arScore ¹è¿­ ¿ä¼ÒÀÇ ÃÑÇÕÀ» ±¸Çß´Ù. ÃÑÇÕÀÌ ±¸ÇØÁö¸é Æò±ÕÀº ÃÑ Çлý¼ö(=¹è¿­ Å©±â)·Î ³ª´©¾î ½±°Ô ±¸ÇÒ ¼ö ÀÖ´Ù. ¹°·Ð ÀÌ ¿¹Á¦ÀÇ °æ¿ì ÇÕ°è¿Í Æò±Õ¸¸ ±¸ÇϹǷΠ¹è¿­À» ¾µ ÇÊ¿ä¾øÀÌ ÀԷ¹޴ Á·Á· ÇÕ°è¿¡ ´©ÀûÇÒ ¼öµµ ÀÖ´Ù. ÇÏÁö¸¸ ÀԷ¹ÞÀº ¼ºÀûÀ» ¹è¿­¿¡ ÀÏ´Ü ÀúÀåÇØ ³õÀ¸¸é ÃÑÇÕ, Æò±Õ »Ó¸¸ ¾Æ´Ï¶ó ÃÖ´ë°ª, ÃÖ¼Ò°ª, ¼®Â÷, ºÐ»ê, ÆíÂ÷ µîÀÇ ´Ù¾çÇÑ Åë°èÄ¡¸¦ ±¸ÇÒ ¼ö ÀÖ°Ô µÈ´Ù.

ÀÌ ¿¹Á¦´Â ¾Õ¿¡¼­ ¸»ÇÑ sizeof ¿¬»êÀÚ·Î ¹è¿­ Å©±â¸¦ ±¸ÇØ ±× Å©±â¸¸Å­ ·çÇÁ¸¦ µ¹°í ÃÑÁ¡À» ³ª´©°í Àִµ¥ ±×³É 5¶ó°í ¹Ù·Î ½áµµ ÀÏ´ÜÀº »ó°ü¾ø´Ù. for (i=0;i<5;i++) À̶ó°í ¾²´Â °ÍÀÌ ÈξÀ ´õ ª°í °£´ÜÇØ º¸ÀδÙ. ¸¸¾à ÀÌ ¿¹Á¦¸¦ È®ÀåÇؼ­ 5¸íÀÌ ¾Æ´Ñ 20¸íÀÇ ¼ºÀûÀ» ÀԷ¹޵µ·Ï ÇÏ°í ½Í´Ù°í ÇØ º¸ÀÚ. ±×·¯¸é arScoreÀÇ Å©±â¸¦ 20À¸·Î ´Ã¸®´Â °Í»Ó¸¸ ¾Æ´Ï¶ó ·çÇÁ¿¡ »ç¿ëµÈ ¹è¿­ Å©±â¿Í ÃÑÁ¡À» ³ª´©´Â Á¦¼öµµ ´Ù 20À¸·Î ¹Ù²ã¾ß ÇÒ °ÍÀÌ´Ù.

ÀÌ ¿¹Á¦´Â ¹è¿­ Å©±â¸¦ ¼¼ ±ºµ¥¼­ ÂüÁ¶ÇÏ°í Äڵ尡 ªÀ¸´Ï ¼öÀÛ¾÷À¸·Î ÆíÁýÇÒ¸¸ ÇÏ°ÚÁö¸¸ Äڵ尡 ±æ¾îÁ®¼­ ¹è¿­ Å©±â¸¦ 29±ºµ¥¼­ ÂüÁ¶ÇÏ°í ÀÖ´Ù¸é Á¤¸» ²ûÁ÷ÇÒ °ÍÀÌ´Ù. ½Ç¼ö·Î Çϳª¸¦ ¼öÁ¤ÇÏÁö ¾Ê°í 5·Î ³²°Ü µÎ¸é ºÒÀÏÄ¡°¡ ¹ß»ýÇÏ¿© ¿Àµ¿ÀÛÇÒ °ÍÀÌ´Ù. ±×·¡¼­ ³»°¡ ÀÌ¹Ì ¹è¿­ Å©±â¸¦ ¾Ë°í ÀÖÁö¸¸ sizeof ¿¬»êÀÚ·Î ¹è¿­ Å©±â¸¦ °è»êÇÏ´Â °ÍÀÌ´Ù. ÀÌ·¸°Ô ÇØ µÎ¸é ¹è¿­ Å©±â°¡ ¹Ù²ð ¶§ ¹è¿­ ¼±¾ð¹®¸¸ ¹Ù²Ù°í ³ª¸ÓÁö µÞ󸮴 ÄÄÆÄÀÏ·¯¿¡°Ô ¸Ã°Ü µÎ¸é µÈ´Ù.

 C¾ð¾î´Â ¹è¿­ÀÇ ¹üÀ§¸¦ ÀüÇô Á¡°ËÇÏÁö ¾Ê´Â´Ù. ÀÌ°ÍÀº ¹è¿­ÀÇ Æ¯Â¡À̶ó±â º¸´Ù´Â ´Ù¸¥ °í±Þ ¾ð¾î¿Í ±¸º°µÇ´Â C¾ð¾îÀÇ °íÀ¯ÇÑ Æ¯Â¡À̸ç Àß ¾Ë¾ÆµÑ ÇÊ¿ä°¡ ÀÖ´Ù. ¹è¿­À» ¼±¾ðÇÒ ¶§ ±× Å©±â¸¦ ÁöÁ¤Çϵµ·Ï µÇ¾î ÀÖÀ¸¹Ç·Î ÄÄÆÄÀÏ·¯´Â ¹è¿­ ¿ä¼ÒÀÇ ³¡ ¹øÈ£¸¦ ¾Ë°í ÀÖ´Ù. ½ÃÀÛÀº Ç×»ó 0¹øÀ̹ǷΠint ar[5]ÀÇ ½ÃÀÛÀº ar[0]ÀÌ°í ³¡Àº ar[4]°¡ µÈ´Ù. ±×·¸´Ù¸é ´ÙÀ½ ¹®ÀåÀº ¾î¶»°Ô ÄÄÆÄÀϵɱî?

 

     int ar[5];

     ar[8]=1234;

 

arÀÇ Å©±â°¡ 5¹Û¿¡ ¾ÈµÇ´Âµ¥ ar[8]À̶ó´Â Á¸ÀçÇÏÁö ¾Ê´Â ¹è¿­ ¿ä¼Ò¿¡ ¾î¶² °ªÀ» ¾²·Á°í Çß´Ù. ÀÌ·¸°Ô Äڵ带 ÀÛ¼ºÇÏ¸é ´ç¿¬È÷ ¿¡·¯·Î ó¸®µÉ °Í °°Áö¸¸ ÀÌ ÄÚµå´Â ¿¡·¯´Â °í»çÇÏ°í °æ°í Çϳª ¾øÀÌ ¾ÆÁÖ Àß ÄÄÆÄÀϵȴÙ. ÄÄÆÄÀÏ·¯°¡ ¹è¿­ÀÇ ¹üÀ§¸¦ Á¡°ËÇÏÁö ¾Ê±â ¶§¹®ÀÌ´Ù. ½ÉÁö¾î ar[-68]°°ÀÌ À½¼ö·Î µÈ ÷ÀÚ¸¦ »ç¿ëÇصµ ¾Æ¹« ÀÌ»óÀÌ ¾ø´Ù. ¹°·Ð ÄÄÆÄÀϸ¸ ÀßµÉ »ÓÀÌÁö Á¤»óÀûÀ¸·Î ½ÇÇàµÇÁö´Â ¾ÊÀ» °ÍÀÌ´Ù.

µµ´ëü C ÄÄÆÄÀÏ·¯¸¦ ¸¸µç »ç¶÷µéÀº ¿Ö ÀÌ·± ±âº»ÀûÀÎ ¿¡·¯ 󸮵µ ÇÏÁö ¾Ê¾ÒÀ»±î? ÀÌ·¸°Ô ¸¸µé¾î ³õÀºµ¥´Â ´Ù ÀÌÀ¯°¡ ÀÖ´Ù. ¹è¿­ ¿ä¼Ò¸¦ ÂüÁ¶ÇÒ ¶§¸¶´Ù ÷ÀÚ ¹øÈ£°¡ ¹è¿­ Å©±âº¸´Ù Å«Áö, ÀÛÀºÁö Á¡°ËÇØ º¸°í ¸¸¾à ¹üÀ§¸¦ ¹þ¾î³ª¸é ¿¡·¯³ª °æ°í·Î ó¸®ÇÒ ¼öµµ ÀÖ´Ù. ±×·¯³ª ÄÄÆÄÀÏ·¯°¡ ÀÌ·± Á¡°ËÀ» ÇÒ ¼ö ÀÖ´Â °æ¿ì´Â ÷ÀÚ°¡ »ó¼öÀÏ ¶§»ÓÀÌ´Ù. º¯¼öÀÎ °æ¿ì´Â ½ÇÇà ½Ã°£¿¡ ¹üÀ§¸¦ Á¡°ËÇÏ´Â Äڵ带 Ãß°¡ÇØ¾ß Çϴµ¥ ¸Å¹ø ½Ç½Ã°£À¸·Î ÷ÀÚÀÇ À¯È¿¼ºÀ» ÀÏÀÏÀÌ Á¡°ËÇÏ·Á¸é ¾î¿ ¼ö ¾øÀÌ ±×¸¸Å­ ½ÇÇà ½Ã°£ÀÌ ´À·ÁÁú °ÍÀÌ´Ù. ¹è¿­ÀÇ °­Á¡Àº ¹«¾ùº¸´Ù ½Å¼ÓÇÑ ¿ä¼Ò ÂüÁ¶Àε¥ ÀÌ·± ÀåÁ¡ÀÌ °¨¼ÒµÇ´Â °ÍÀÌ´Ù.

±×·¡¼­ ÄÄÆÄÀÏ·¯´Â ¹è¿­ ÂüÁ¶¹®¿¡ ´ëÇØ ¾Æ¹«·± 󸮵µ ÇÏÁö ¾ÊÀ¸¸ç ¹è¿­ÀÇ ¹üÀ§¸¦ Á¡°ËÇÏ´Â °ÍÀº °í½º¶õÈ÷ °³¹ßÀÚÀÇ ¸òÀ¸·Î ³²°ÜÁ® ÀÖ´Ù. °³¹ßÀÚ´Â ÇÊ¿äÇÒ °æ¿ì¿¡ ÇÑÇØ Ã·ÀÚ°¡ ¹è¿­ ¹üÀ§¾È¿¡ ÀÖ´ÂÁö Á¡°ËÇØ º¸µÇ ´ë°³ÀÇ °æ¿ì µû·Î Á¡°ËÇÒ ÇÊ¿ä°¡ ¾ø´Ù. ¾Õ¿¡¼­ ¿¹·Î µç ¼ºÀû ó¸® ¿¹Á¦¸¦ º¸¸é arScoreÀÇ Ã·ÀÚ·Î »ç¿ëµÇ´Â i°¡ 0~4±îÁö ·çÇÁ¸¦ µ¹µµ·Ï µÇ¾î ÀÖ¾î¹Ç·Î Àý´ë·Î ¹üÀ§¸¦ ¹þ¾î³ªÁö ¾Ê´Â´Ù. ±»ÀÌ ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ Ã·ÀÚÀÇ ¹üÀ§¸¦ Á¡°ËÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

 

     for (i=0;i<5;i++) {

          if (i >= 0 && i < 5) {

               sum+=arScore[i];

          }

     }

 

Á¶±Ý¸¸ »ìÆ캸¸é ´À³¢°ÚÁö¸¸ ÀÌ Á¶°Ç Á¡°Ë¹®Àº ½ÇÇà½Ã°£¸¸ ±î¸Ô°í ÇÁ·Î±×·¥ÀÇ Å©±â¸¸ ´Ã¸®´Â ÀüÇô ºÒÇÊ¿äÇÑ ÄÚµåÀÌ´Ù. C°¡ ¹è¿­ÀÇ ¹üÀ§¸¦ Á¡°ËÇÏÁö ¾Ê´Â ´Ù¸¥ ÀÌÀ¯µµ ÀÖ´Ù. ´ÙÀ½¿¡ Æ÷ÀÎÅ͸¦ °øºÎÇØ º¸¸é ¾Ë°ÚÁö¸¸ arÀÇ Å©±â°¡ 5¶ó°í Çؼ­ ar[8]ÀÌ ÀüÇô Àǹ̰¡ ¾ø´Â °ÍÀº ¾Æ´Ï¸ç ¸¶Âù°¡Áö·Î ÷ÀÚ·Î À½¼ö¸¦ ¾²´Â °Íµµ ÀÏÁ¾ÀÇ Æ¯¼öÇÑ ±â¹ýÀ¸·Î È°¿ëµÇ±âµµ ÇÑ´Ù.

¹è¿­ÀÇ ¹üÀ§ Á¡°ËÀ» ÇÏÁö ¾Ê´Â °ÍÀº Áß±Þ ¾ð¾î·Î¼­ CÀÇ ¼º°ÝÀ» Àß ¸»ÇØÁØ´Ù. °³¹ßÀÚÀÇ ºÎÁÖÀÇÇÑ ÄÚµù ½À°ü±îÁö ÄÄÆÄÀÏ·¯°¡ Ã¥ÀÓÀ» ÁöÁö ¾Ê´Â ´ë½Å ±×¸¸Å­ »ý¼ºµÇ´Â ÄÚµå´Â ÀÛ°í »¡¶óÁö´Â °ÍÀÌ´Ù. CÀÇ ÀÌ·± Ư¡Àº C¾ð¾î¸¦ »ç¿ëÇÏ´Â µ¿¾È Ç×»ó ¿°µÎ¿¡ µÎ¾î¾ß Çϴµ¥ Á¶±Ý¸¸ ½Ç¼öÇصµ ÇÁ·Î±×·¥ÀÌ ´Ù¿îµÉ À§ÇèÀÌ ÀÖ´Ù. ´ÙÀ½ ¿¹Á¦´Â C·Î ¸¸µç ÇÁ·Î±×·¥ÀÇ ÀÌ·± À§Ç輺À» Àß º¸¿©ÁØ´Ù.

 

¿¹ Á¦ : ArrayBound

#include <Turboc.h>

 

void main()

{

     char name[10];

 

     printf("À̸§ÀÌ ¹¹´Ï? ");

     gets(name);

     printf("³Ê°¡ ¹Ù·Î ±× À¯¸íÇÑ %sÀ̱¸³ª.\n",name);

}

 

À̸§À» ¹°¾î º¸°í ÀԷ¹ÞÀº À̸§À» ´Ù½Ã È­¸éÀ¸·Î Ãâ·ÂÇØ ÁÖ´Â °Í¹Û¿¡ ¾ø´Ù. »ç¶÷ÀÇ À̸§Àº º¸Åë 3ÀÚ°í ¸¹¾Æ ºÁ¾ß 4ÀÚÀ̹ǷΠ°ø¹é°ú ³Î ¹®ÀÚ±îÁö °í·ÁÇؼ­ 10¹ÙÀÌÆ®À̸é ÃæºÐÇÏ´Ù. ÀÌ ¿¹Á¦ÀÇ Áú¹®¿¡ ´ëÇØ "±è ³¯¾À", "Ȳº¸ ¶×¶×", "Á¦ÀÓ½ºµò" Á¤µµ·Î ÀÔ·ÂÇÏ¸é ¾Æ¹« ¹®Á¦°¡ ¾ø´Ù. ÇÏÁö¸¸ 10¹ÙÀÌÆ®¸¦ ³Ñ´Â À̸§ÀÎ "¹Ú ¹ÌÀιڸí", "¾Æ³îµå ½´¿ÐÃ÷Á¦³×°Å"¸¦ ÀÔ·ÂÇØ º¸¾Æ¶ó.

³Ê¹« ±ä À̸§ÀÌ ÀԷµǾ ¾Æ¸¶ ´çÀå ÀÚ»ìÇØ ¹ö¸± °ÍÀÌ´Ù. gets ÇÔ¼ö´Â Å°º¸µå·Î ÀÔ·ÂµÈ ¹®ÀÚ¿­À» ÀÔ·Â¹Þ¾Æ name ¹è¿­¿¡ ³Ö¾îÁִµ¥ name ¹è¿­ÀÇ Å©±â µûÀ§´Â °í·ÁÇÏÁö ¾Ê´Â´Ù. »ç½Ç gets´Â ½ÃÀÛ ¹øÁö¸¸ Àü´Þ¹ÞÀ» »Ó nameÀÇ Å©±â°¡ ¾ó¸¶³ª µÇ´ÂÁöÁ¶Â÷µµ ¾Ë ¼ö ¾øÀ¸¸ç ¾Ë¾Æ¼­ ÃæºÐÇÑ Å©±â·Î ¼±¾ðÇß°Ú°Å´Ï »ý°¢ÇØ ¹ö¸°´Ù. ÀÌ ÇÁ·Î±×·¥ÀÇ ¿À·ù´Â »ç¶÷ÀÇ À̸§À» ÀԷ¹޴ ¹öÆÛÀÇ Å©±â¸¦ 10¹Û¿¡ ÁÖÁö ¾Ê¾Ò´Ù´Âµ¥ ÀÖ´Ù.

¹öÆÛ¸¦ 128À̳ª 256Á¤µµ·Î ÃæºÐÈ÷ ´Ã¸®µç°¡ ¾Æ´Ï¸é gets ´ë½Å ¹öÆÛÀÇ Å©±â¸¦ Àü´Þ¹Þ´Â ´Ù¸¥ ÇÔ¼ö(fgets)·Î ÀÔ·Â¹Þ¾Æ¾ß ÇÑ´Ù. ¶Ç´Â scanf ÇÔ¼öÀÇ %s ¼­½Ä¿¡ ÃÖ´ë ÀÔ·Â ¹®ÀÚ ¼ö¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀ» ¾µ ¼öµµ Àִµ¥ À§ ¿¹Á¦ÀÇ °æ¿ì scanf("%9s",name)À̶ó°í ¾²¸é ¾ÈÀüÇÏ´Ù. ´ÙÀ½ ¿¹Á¦µµ ¿ª½Ã Ãʺ¸ÀÚµéÀÌ ¹è¿­À» À߸ø ´Ù·ç´Â ÈçÇÑ ¿¹Áß ÇϳªÀÌ´Ù.

 

¿¹ Á¦ : ArrayBound2

#include <Turboc.h>

 

void main()

{

     int i;

     int ar[5];

 

     i=1234;

     ar[5]=5678;

     printf("i=%d\n",i);

}

 

Á¤¼öÇü º¯¼ö i¸¦ ¼±¾ðÇÏ°í 1234 ·Î ÃʱâÈ­Çß´Ù. ±×¸®°í Å©±â 5ÀÇ Á¤¼öÇü ¹è¿­arÀ» ¼±¾ðÇߴµ¥ ÀÌ ¹è¿­ÀÇ Å©±â°¡ 5À̹ǷΠ¹è¿­ ³¡ ¿ä¼Ò°¡ 5¶ó°í Âø°¢Çؼ­ ar[5]¿¡ 5678À̶ó´Â °ªÀ» ´ëÀÔÇß´Ù. ¹è¿­ ¹üÀ§¸¦ ¹þ¾î³µÁö¸¸ ÄÄÆÄÀÏ·¯´Â ¾Æ¹«·± ÁöÀûµµ ÇÏÁö ¾Ê´Â´Ù. ÀÌ »óÅ¿¡¼­ i°ªÀ» Ãâ·ÂÇØ º¸¸é ¿ø·¡ ´ëÀÔÇß´ø 1234°¡ ¾Æ´Ñ ar[5]¿¡ ´ëÀÔµÈ 5678ÀÌ Ãâ·ÂµÉ °ÍÀÌ´Ù.

Áö¿ªº¯¼öµéÀº ¼±¾ðµÈ ¼ø¼­´ë·Î ½ºÅÿ¡ »ý¼ºµÇ´Âµ¥ i°¡ ar ¹è¿­ ´ÙÀ½¿¡ ÀÎÁ¢ÇÏ°Ô ¹èÄ¡µÉ °ÍÀÌ´Ù. ±×·¡¼­ ar[5]ÀÇ ÀÚ¸®°¡ ¿ì¿¬È÷ i°¡ ±â¾ïµÈ ½ºÅà À§Ä¡¿Í ÀÏÄ¡ÇÏ°Ô µÇ°í ±×·¡¼­ ar[5]¿¡ ´ëÀÔµÈ °ªÀÌ iÀÇ °ªÀ» ¹Ù²Ù°Ô µÇ´Â °ÍÀÌ´Ù. ÀϺη¯ ÀÌ·± È¿°ú¸¦ ³ë¸®´Â °æ¿ì´Â ¾ø±â ¶§¹®¿¡ ÀÌ´Â ´Ü¼øÇÑ ½Ç¼ö¶ó°í ºÁ¾ß ÇÑ´Ù.

ÇÏÁö¸¸ ¹®Á¦´Â ¾Æ¹« °æ°í³ª ¿¡·¯°¡ ¾ø´Ù´Â Á¡À̸ç ÀÌ ÇÁ·Î±×·¥Àº i°ª¸¸ ºñÁ¤»óÀûÀ¸·Î ¹Ù²î¾úÀ» »Ó ´Ù¿îµÇÁöµµ ¾Ê´Â´Ù. i°¡ ¹æÆÐ ¿ªÇÒÀ» ÇÑ °ÍÀε¥ ¸¸¾à i°¡ ¾ÆÁÖ Áß¿äÇÑ Àǹ̸¦ °¡Áö´Â º¯¼ö¶ó¸é ÀÌ ÇÁ·Î±×·¥Àº Á¦´ë·Î µ¿ÀÛÇÒ ¼ö ¾øÀ» °ÍÀÌ´Ù. ÀϹÝÀûÀ¸·Î ¸Þ¸ð¸®¸¦ À߸ø °Çµå¸®¸é °ð¹Ù·Î ÇÁ·Î±×·¥ÀÌ ¿Àµ¿ÀÛÇÏÁö ¾ÊÀ¸¸ç ¾ðÁ¦ ¿Àµ¿ÀÛÀ» ÇÏ°Ô µÉÁö ¿¹ÃøÇϱ⠹«Ã´ ¾î·Æ´Ù. ±×·¡¼­ ÀÌ·± ºÎ·ùÀÇ ¹ö±×°¡ °ñÄ¡¾ÆÇ °ÍÀÌ´Ù.

 

ÀÌ»óÀ¸·Î ¹è¿­ÀÇ Áß¿äÇÑ Æ¯Â¡ 4°¡Áö¿¡ ´ëÇØ ¾Ë¾Æº¸¾Ò´Ù. ÀÌ ¿Ü¿¡ ¸î °¡Áö »ç¼ÒÇÑ Æ¯Â¡µéÀÌ ´õ Àִµ¥ °ü·Ã ºÎºÐ¿¡¼­ ³íÇÏ°Ô µÉ °ÍÀÌ´Ù. ¹è¿­ÀÇ ÀÌ·± Ư¡Àº C¾ð¾î ÀÚü¸¦ ÀÌÇØÇϴµ¥ Å« ºñÁßÀ» Â÷ÁöÇϹǷΠÀß ¾Ë¾Æ µÎµµ·Ï ÇÏÀÚ.