[3] C ¾ð¾î ÇÁ·Î±×·¡¹Ö

    6. ¼øÈ¯¹®(¹Ýº¹ ±¸Á¶)
    : ƯÁ¤ÇÑ ºÎºÐÀ» ¹Ýº¹Çϵµ·Ï ÇÏ´Â ¸í·É¹®ÀÌ´Ù.

      ¨¿ for¹®
      : for¹®Àº ¹Ýº¹±¸Á¶¿¡¼­ °¡Àå ¸¹ÀÌ ¾²ÀÌ´Â ÇüÅ·Î, ¹Ýº¹È½¼ö°¡ Á¤ÇØÁö´Â ÁöÁ¤ ¹Ýº¹ ·çÇÁ·Î¼­ »ç¿ëµÈ´Ù.

for(Ãʱâ½Ä;Á¶°Ç½Ä;¹Ýº¹½Ä)

    {

     ¹Ýº¹µÈ ºÎºÐ;

    } 

        ¨Í C¿¡¼­´Â º£ÀÌÁ÷(basic)°ú °°ÀÌ next¸¦ »ç¿ëÇÏÁö ¾Ê°í {  }·Î ¹­´Â´Ù. ¹Ýº¹ÇÒ ºÎºÐÀÌ Çѹ® ÀåÀ̶ó¸é { }¸¦ »ý·«ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ C¿¡¼­´Â º£ÀÌÁ÷ÀÇ ÃʱâÄ¡, ÃÖÁ¾Ä¡, Áõ°¡Ä¡ÀÇ Çü½ÄÀÌ ¾Æ´Ï¶ó, ¡®Á¦¾î º¯¼ö ÃʱâÈ­; ¹Ýº¹ Á¶°Ç Á¶»ç; Á¦¾î º¯¼ö º¯È­¡¯¶ó´Â Çü½ÄÀ¸·Î ±â¼úµÈ´Ù.

          ¨ç Ãʱâ½Ä : ·çÇÁ¸¦ ½ÇÇàÇϱâ Á¤¿¡ ÇÑ ¹ø¸¸ ½ÇÇàµÇ´Â ÃʱâÈ­ °úÁ¤ÀÌ´Ù(for¹®ÀÇ ·çÇÁ°¡ ½ÇÇàµÇ´Â µ¿¾È ´Ü ÇÑ ¹ø¸¸ ½ÇÇà). ±×¸®°í ¿©±â¼­ »ç¿ëÇÏ´Â ½Ä »çÀÌ¿¡´Â ¼¼¹ÌÄÝ·Ð(;)À» »ç¿ëÇÏ¿© ½Ä°ú ½ÄÀ» ±¸ºÐÇÑ´Ù.
          ¨è Á¶°Ç½Ä : ·çÇÁ¸¦ ºüÁ® ³ª¿À±â À§ÇÑ Á¶°Ç °Ë»ç ½ÄÀÌ´Ù. ÀÌ Á¶°Ç½ÄÀº ·çÇÁ ½ÇÇà Áß ¸Å¹ø Á¶»çÇÏ¸ç ´Ü ÇÑ °³ÀÇ ¹®À常 ¾µ ¼ö ÀÖ´Ù. Á¶°Ç½ÄÀÌ Âü(1)ÀÎ °æ¿ì °è¼Ó ¹Ýº¹Çϰí, °ÅÁþ(0)ÀÎ °æ¿ì ·çÇÁ¸¦ ºüÁ® ³ª¿Â´Ù. ±×·¯¹Ç·Î Á¶°Ç½ÄÀº ÃÖÁ¾Ä¡º¸´Ù À۰ųª °°¾Æ¾ß ÇÑ´Ù.
          ¨é ¹Ýº¹½Ä : ·çÇÁÀÇ ´ÙÀ½ ½ÇÇàÀ» ÁغñÇÏ´Â ´Ü°è·Î ¿©·¯ °³ÀÇ ½ÄÀ» ³ª¿­ÇÒ ¼ö ÀÖÀ¸¸ç ¡®,¡¯·Î ±¸ºÐÇÑ´Ù.

        ¨Î for¹®¿¡¼­´Â ÃʱⰪ, Á¶°Ç½Ä, Áõ°¡°ªÀ» »ç¿ëÇÏÁö ¾Ê¾Æµµ µÈ´Ù. ±×·¯³ª °¢°¢ÀÇ °ªÀ» ±¸ºÐÇÏ´Â ¼¼¹ÌÄÝ·Ð(;)Àº ¹Ýµå½Ã ÀÖ¾î¾ß ÇÑ´Ù. ¿©±â¼­ Á¶°ÇÀÌ ¾øÀ¸¸é(for(;;)) ·çÇÁ¸¦ ¹«ÇÑÈ÷ ¹Ýº¹ÇÑ´Ù.

        ¨Ï Á¦¾î º¯¼ö

          ¨ç º¯¼ö¸¦ Áõ°¡½ÃŰ´Â ´ë½Å °¨¼Ò½Ãų ¼öµµ ÀÖ´Ù.
          ¨è Áõ°¡ °ªÀ» 1»Ó¸¸ ¾Æ´Ï¶ó, 2,3,4..µî ÇÊ¿äÇÑ ´ë·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù.
          ¨é ¼ýÀÚ ´ë½Å ¹®ÀÚ¸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù.
          ¨ê Á¶°Ç½ÄÀº ¾î¶² °ÍÀ» »ç¿ëÇØµµ µÈ´Ù.

        ¨Ð °æ¿ì¿¡ µû¶ó ·çÇÁ ¾È¿¡ ¶Ç´Ù½Ã ·çÇÁ¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. À̰°ÀÌ ·çÇÁ ¾È¿¡ ·çÇÁ ¾È¿¡ ·çÇÁ°¡ µé¾î°¡´Â °ÍÀ» ¡®·çÇÁÀÇ Áßø ȤÀº ´ÙÁß ·çÇÁ¡¯¶ó ÇÑ´Ù. ´ÙÁß ·çÇÁ¿¡¼­ ¾ÈÂÊ ·çÇÁºÎÅÍ ¸ÕÀú ½ÇÇàµÈ´Ù.

             ¿¹) 1ºÎÅÍ 100±îÁö ¦¼öÀÇ ÇÕÀ» ±¸ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

          #include <stdio.h> 

           main( )

             {

              int i, sum = 0;

               for(i=1 ; i <= 100 ; i+=2)   /* ¶Ç´Â for (i=100 ; i >= 1 ; i-=2) */

                 sum += i;

              printf("\n Sum = %-d", sum);

             }

      ¨À while ¹® : Á¶°ÇÀÌ ¡®Âü¡¯ÀÎ °æ¿ì¿¡¸¸ ƯÁ¤ ºÎºÐÀ» ¹Ýº¹ ¼öÇàÇÑ´Ù.

while(Á¶°Ç½Ä)

 {

  ¹Ýº¹ÇÒ ºÎºÐ;

 }

         ¨Í Á¶°Ç½ÄÀÇ °á°ú°¡ Âü(1)ÀÌ¸é ¹Ýº¹ÇÒ ºÎºÐÀ» ¼öÇàÇϰí, °ÅÁþ(0)ÀÌ¸é ´ÙÀ½ ¹®ÀåÀ¸·Î Á¦¾î¸¦ ¿Å±ä´Ù. ±×·¯¹Ç·Î ·çÇÁ ¾È¿¡ Á¶°Ç½ÄÀÇ °á°ú¸¦ º¯È¯½ÃŰ´Â ¹®ÀåÀÌ ÇÊ¿äÇÏ´Ù. Á¶°Ç½ÄÀÇ °á°ú¸¦ º¯È­½ÃŰÁö ¾ÊÀ¸¸é ¹«ÇÑ ·çÇÁ¿¡ ºüÁø´Ù. ±×¸®°í Á¶°Ç½ÄÀº º¯¼ö³ª ¼ö½Ä, ÇÔ¼ö °ªÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÇϳªÀÇ ¹®À常 »ç¿ëÇÒ °æ¿ì ¹®ÀåÀÇ ½ÃÀÛ°ú ³¡¿¡ ºê·¹À̽º({ })¸¦ ÀûÀ» Çʿ䰡 ¾øÀ¸¸ç Çϳª ÀÌ»óÀÇ ¹®ÀåÀ» »ç¿ëÇÒ °æ¿ì ºê·¹À̽º¸¦ Àû´Â´Ù.
        ¨Î for¹®Àº Á¶°ÇÀÇ Âü°ú °ÅÁþ¿¡ °ü°è¾øÀÌ for·çÇÁ¸¦ ÇÑ ¹øÀº ½ÇÇàÇÏÁö¸¸ while¹®¿¡¼­´Â Á¶°ÇÀÌ °ÅÁþ(0)ÀÎ °æ¿ì while ·çÇÁ ºÎºÐÀ» ÇÑ ¹øµµ ¼öÇàÇÏÁö ¾Ê´Â´Ù.
        ¨Ï for¹®¿¡¼­´Â ÃʱⰪ, Á¶°Ç½Ä, Áõ°¡°ªÀ» »ç¿ëÇÏÁö ¾Ê¾Æ ¹«ÇÑ ·çÇÁ¸¦ ¸¸µå³ª while¹®¿¡¼­´Â Á¶°ÇÀ» Âü(1)À¸·Î ¸¸µé¾î(while(1)) ¹«ÇÑ ·çÇÁ¸¦ ¸¸µç´Ù.
        ¨Ð while¹® µÚ¿¡ ¼¼¹ÌÄÝ·Ð(; ¢¡ ÇϳªÀÇ ¸í·É ÀνÄ)À» »ç¿ëÇÏ¸é ·çÇÁ¸¦ Å»ÃâÇÏÁö ¸øÇØ ¹«ÇÑ·çÇÁ¿¡ ºüÁø´Ù.

             ¿¹) 1ºÎÅÍ 100±îÁö ¦¼öÀÇ ÇÕÀ» ±¸ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

          #include <stdio.h> 

           main( )

             {

              int i = 0, sum = 0;

               while(i==100)

                {

                 i += 2;

                 sum += i;

                };

              printf("\n Sum = %-d", sum);

             }

      ¨Á do ¢¦ while ¹®
      : while¹®°ú ºñ½ÁÇÏÁö¸¸ while¹®ÀÌ Á¶°ÇÀ» ¸ÕÀú ÆÇ´ÜÇÑ ´ÙÀ½ ·çÇÁ¸¦ ½ÇÇàÇÏÁö¸¸, do ¢¦ while¹®Àº ·çÇÁ¸¦ ¸ÕÀú ½ÇÇàÇÑ ÈÄ Á¶°ÇÀ» °Ë»çÇØ Àû¾îµµ ÇѹøÀº ·çÇÁ°¡ ½ÇÇàµÈ´Ù.

   do{

    ¹Ýº¹ÇÒ ºÎºÐ;

   }while(Á¶°Ç½Ä);

        ¨Í Á¶°ÇÀÌ ÂüÀÎ µ¿¾È ·çÇÁ¸¦ ¹Ýº¹ÇÑ´Ù. while¹®°ú´Â ´Þ¸® Á¶°Ç½Ä ´ÙÀ½¿¡ ¼¼¹ÌÄÝ·Ð(;)À» ºÙÀδÙ. ·çÇÁ ¼Ó¿¡ Çϳª ÀÌ»óÀÇ ¹®ÀåÀ» ±â¼úÇÒ ¼ö ÀÖ´Ù.

             ¿¹) 1ºÎÅÍ 100±îÁöÀÇ ÇÕÀ» ±¸ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

          #include <stdio.h> 

           main( )

             {

              int i = 1, sum = 0;

               do{

                 sum += i++;

                }while(i==100);

              printf("\n Sum = %-d", sum);

             }

      ¨Â break¹®°ú continue¹®

        ¨Í break¹®(·çÇÁ ºüÁ® ³ª¿È)
        : ·çÇÁ ½ÇÇà µµÁß¿¡ 󸮸¦ Áß´ÜÇÏ°í ½ÍÀ» ¶§ »ç¿ëÇϴµ¥ ÇÁ·Î±×·¥ÀÇ È帧À» ·çÇÁ¿¡¼­ ¹þ¾î³ª°Ô ÇÑ´Ù. ÇϳªÀÇ break¹®¿¡ ÀÇÇØ¼­´Â ÇϳªÀÇ ·çÇÁ¸¸ ¹þ¾î³¯ ¼ö ÀÖ´Ù. ±×·¯¹Ç·Î ¿©·¯ °³ÀÇ ·çÇÁ¸¦ »ç¿ëÇÏ¸é »ç¿ëÇÑ ¼ö¸¸Å­ÀÇ break¹®À» »ç¿ëÇØ¾ß ÇÑ´Ù.

             ¿¹) 1ºÎÅÍ 100±îÁöÀÇ ÇÕÀ» ±¸ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

          #include <stdio.h> 

           main( )

             {

              int i = 1, sum = 0;

               while(1){

                 if(i==100) break;

                 sum += i++;

                };

              printf("\n Sum = %-d", sum);

             }

        ¨Î continue¹®
        : ·çÇÁ 󸮿¡¼­ ¾Æ¹«°Íµµ ÇÏÁö ¾Ê°í ´ÙÀ½ ¹Ýº¹¹®À¸·Î ¿Å°Ü°¡°í ½ÍÀ» ¶§ »ç¿ëÇÑ´Ù. ·çÇÁ ¾È¿¡¼­ continue¹®À» ¸¸³ª¸é, continue ¾Æ·¡¿¡ ÀÖ´Â ·çÇÁ ³»ÀÇ ¸í·ÉÀº 󸮵ÇÁö ¾Ê°í ·çÇÁÀÇ Ã³À½À¸·Î µ¹¾Æ°£´Ù.

             ¿¹) 1ºÎÅÍ 100±îÁöÀÇ Â¦¼öÀÇ ÇÕÀ» ±¸ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

          #include <stdio.h> 

           main( )

             {

              int i = 1, sum = 0;

               do{

                 if((i % 2) == 1) continue;

                 sum += i++;

                }while(i==100);

              printf("\n Sum = %-d", sum);

             }

          #include <stdio.h> 

           main( )

             {

              int i, sum = 0;

               for(i = 1 ; i <= 100 ; i++)

                {

                 if((i % 2) == 1) continue;

                 sum += i;

                }

              printf("\n Sum = %-d", sum);

             }

      ¨Ã goto¹®
      : ÇÁ·Î±×·¥ Á¦¾î¸¦ ÁöÁ¤µÈ  ·¹À̺íÀÇ ¹®ÀåÀ¸·Î ºÐ±â½ÃŲ´Ù. ·¹À̺í·Î ÁöÁ¤µÈ ¹®ÀåÀ» ±¸ºÐÇÏ´Â µ¥´Â ÄÝ·ÐÀ» »ç¿ëÇϰí, ·¹À̺í¸íÀº º¯¼ö¸íÀÇ ±ÔÄ¢¿¡ µû¸¥´Ù. ·¹À̺í·Î ÁöÁ¤µÈ ¹®ÀåÀº gotoÀÇ ¾Õ ¶Ç´Â µÚ¿¡ ÀÖÀ» ¼ö ÀÖ´Ù.

goto ·¹À̺í;

·¹À̺í : ½ÇÇ๮

            ¿¹) 1ºÎÅÍ 100±îÁöÀÇ Â¦¼öÀÇ ÇÕÀ» ±¸ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇ϶ó.

        #include <stdio.h> 

         main( )

           {

            int i = 1, sum = 0;

         Loop:

              if((i % 2) == 1) goto Mid;

               sum += i++;

         Mid:

              if (i==100) goto Exit

              goto Loop;

          Exit:

            printf("\n Sum = %-d", sum);

           }

        #include <stdio.h> 

         main( )

           {

            int i, sum = 0;

             for(i = 1 ; i <= 100 ; i++)

              {

               if((i % 2) == 1) continue;

               sum += i;

              }

            printf("\n Sum = %-d", sum);

           }


    Âü°í) ´ëÀÔ ¿¬»êÀÚ(¡°=¡±)¿Í ºñ±³ ¿¬»êÀÚ(¡°==¡±)°¡ Á¶°Ç½Ä¿¡ »ç¿ëµÉ ¶§ÀÇ Â÷ÀÌÁ¡

      ¨¿ ¡°a=7¡±Àº ÂüÀΰ¡ °ÅÁþÀΰ¡?
      : À§ÀÇ Áú¹®¿¡ ´ëÇÑ ´äÀº a¿¡ 7À» ´ëÀÔÇÒ ¼ö ÀÖ´ÂÁö ¾ø´ÂÁö¸¦ »ý°¢Çغ¸¸é µÈ´Ù. a¿¡ 7À» ´ëÀÔÇÒ ¼ö ÀÖÀ¸¹Ç·Î À§ÀÇ ´äÀº ´ç¿¬È÷ ÂüÀÌ´Ù.

      ¨À ¡°a=7¡±°ú ¡°a==7"
      : ¾ÕÀÇ °ÍÀº a¿¡ 7À» ´ëÀÔÇ϶ó´Â ´ëÀÔ¿¬»êÀÚÀÌ°í µÚÀÇ °ÍÀº a¿Í 7À» ºñ±³Ç϶ó´Â ºñ±³ ¿¬»êÀÚÀÌ´Ù. ¸í¹éÈ÷ ´Ù¸¥ °³³äÀÌÁö¸¸ »ç¿ëÀÚÀÇ ºÎÁÖÀ§·Î À§ÀÇ °ÍÀÌ ·çÇÁÀÇ Á¶°Ç½Ä¿¡ »ç¿ëµÇ¸é ¹«ÇÑ ·çÇÁ·Î ºüÁø´Ù. ¸¹Àº »ç¶÷µéÀÌ ¼öÇÐÀû °³³äÀ̳ª BASIC°ú °°Àº ´Ù¸¥ ÇÁ·Î±×·¥À» Â¥´ø ¹ö¸©À¸·Î ºñ±³ ¿¬»êÀÚ¸¦ »ç¿ëÇÒ ÀÚ¸®¿¡ ´ëÀÔ ¿¬»êÀÚ¸¦ »ç¿ëÇϰí´Â Çϴµ¥ Á¶½ÉÇÏ¿©¾ß ÇÑ´Ù.


Copyright © 2002, YoungJin Suh All right Reserved