* Á¦ 4Àå - ¿¬ »ê ÀÚ À̹ø Àå¿¡¼­´Â ÇÁ·Î±×·¥¿¡¼­ ¿¬»êÀ» °¡´ÉÇÏ°Ô ¸¸µé¾î ÁÖ´Â ¿¬»êÀڵ鿡 °ü ÇÏ¿© ¾Ë¾Æ º¸°Ú´Ù. ¿¬»êÀÚ¶õ ´ë»ó ÀÚ·á¿¡ ´ëÇØ ¾î¶² Á¶ÀÛÀ» ÇÏ´Â ºÎÈ£¸¦ ¸»Çϸç, ÀÌ ¶§ ´ë»ó ÀÌ µÇ´Â ÀÚ·áµéÀ» ¿ÀÆÛ·£µå(Operand)¶ó°í ºÎ¸¥´Ù. ÀÌ·¯ÇÑ ¿¬»êÀÇ ´ë»óÀÌ µÇ´Â ¿ÀÆÛ·£µåÀÇ °¹¼ö¿¡ µû¶ó CÀÇ ¿¬»êÀÚ´Â 1Ç× ¿¬»êÀÚ, 2Ç× ¿¬»êÀÚ, 3Ç× ¿¬»êÀÚ µîÀ¸·Î ±¸ºÐÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ °¢ ¿¬»êÀÚµéÀº ¿ì¼± ¼øÀ§¶ó´Â °Ô ÀÖ¾î ÇÑ ¹®Àå¿¡¼­ ¿©·µÀÇ ¿¬»êÀÚµé ÀÌ ¾²¿´À» ¶§ ±× ¿ì¼±¼øÀ§¿¡ ÀǰÅÇÏ¿© ¿¬»êÀ» ¼öÇàÇÏ°Ô µÈ´Ù. ±×¸®°í µ¿ÀÏ ÇÑ ¿ì¼±¼øÀ§ÀÇ ¿¬»êÀÚµéÀÌ ÇÑ ¼ö½Ä¿¡ µ¿½Ã¿¡ ¾²¿´À» °æ¿ì¿¡´Â, ÀÌ ½ÄÀ» ÁÂ ÃøºÎÅÍ Æò°¡ÇÏ´À³Ä ¿ìÃøºÎÅÍ Æò°¡ÇÏ´À³Ä¿¡ µû¶ó Á°áÇÕ¼º°ú ¿ì°áÇÕ¼ºÀ¸·Î ³ª´©¾î Áö´Â ¼ºÁúÀ» °¡Áö´Â °Íµµ ÀÖ´Ù. À§¿¡¼­ ¾ð±ÞÇÑ ¿¬»êÀÚÀÇ Æ¯Â¡µéÀÌ Ãʺ¸Àڵ鿡°Ô´Â È¥¶õ½º·´°ÚÁö¸¸, ÀÏ´Ü ÀÍÇôµÎ¸é º¹ÀâÇÑ ¾Ë°í¸®Áòµµ ½±°í ÇÔÃ༺ ÀÖ°Ô Ç¥ÇöÇÒ ¼ö ÀÖ¾î À¯¿ëÇÏ´Ù. <Ç¥1> °¢ ¿¬»êÀÚµéÀÇ Á¾·ù¿Í ¿ì¼± ¼øÀ§ +-----------+-------+-----------------------------------+----+ | ´ë ºÐ ·ù |¼ÒºÐ·ù | ¿¬ »ê ÀÚ |°áÇÕ| | | | |±ÔÄ¢| +===========+=======+===================================+====+³ô´Ù | ÀÏ Â÷ ½Ä |primery| ( ) [ ] -> . | -> | +-----------+-------+-----------------------------------+----+ |´ÜÇ× ¿¬»êÀÚ| ´Ü Ç× | ! ~ ++ -- - cast¿¬»êÀÚ * & sizeof | <- | +-----------+-------+-----------------------------------+----+ | | ½Â Á¦ | * / % | -> | | |-------+-----------------------------------+----+ | | °¡ °¨ | + - | -> | ¿ì | |-------+-----------------------------------+----+ | |½¬ÇÁÆ® | << >> | -> | | |-------+-----------------------------------+----+ | | ºñ ±³ | < <= > >= | -> | ¼± | |-------+-----------------------------------+----+ |ÀÌÇ× ¿¬»êÀÚ| µî °¡ | == != | -> | | |-------+-----------------------------------+----+ | |ºñÆ®AND| & | -> | | |-------+-----------------------------------+----+ | |ºñÆ®XOR| ^ | -> | ¼ø | |-------+-----------------------------------+----+ | |ºñÆ® OR| | | -> | | |-------+-----------------------------------+----+ | |³í¸®AND| && | -> | À§ | |-------+-----------------------------------+----+ | |³í¸® OR| || | -> | +-----------+-------+-----------------------------------+----+ |»ïÇ× ¿¬»êÀÚ| Á¶ °Ç | ? : | <- | +-----------+-------+-----------------------------------+----+ | Ä¡ ȯ | |=+= -= *= /= %= | | | | Ä¡ ȯ |-----------------------------------| <- | | ¿¬ »ê ÀÚ | | >>= <<= &= ^= != | | +-----------+-------+-----------------------------------+----+ |¼øÂ÷ ¿¬»êÀÚ| ¼ø Â÷ | , | -> |³·´Ù +-----------+-------+-----------------------------------+----+ 1. »ê¼ú ¿¬»êÀÚ + : ¿À¸¥ÂÊ¿¡ ÀÖ´Â °ªÀ» ¿ÞÂÊ¿¡ ÀÖ´Â °ª¿¡ ´õÇÑ´Ù. - : ¿ÞÂÊ¿¡ ÀÖ´Â °ª¿¡¼­ ¿À¸¥ÂÊÀÇ °ªÀ» »«´Ù. * : ¿À¸¥ÂÊÀÇ ¼ö¸¦ ¿ÞÂÊÀÇ ¼ö·Î °öÇÑ´Ù. / : ¿ÞÂÊÀÇ ¼ö¸¦ ¿À¸¥ÂÊÀÇ ¼ö·Î ³ª´«´Ù. Á¤¼ö¿Í Á¤¼öÀÇ ¿¬»êÀÏ ¶©,¼Ò¼öÁ¡ ÀÌÇÏ´Â ¹ö¸°´Ù. % : ¿ÞÂÊÀÇ ¼ö¸¦ ¿À¸¥ÂÊÀÇ ¼ö·Î ³ª´­¶§ ³ª¸ÓÁö¸¦ °á°ú·Î ÃëÇÑ´Ù. (Á¤¼ö¿¡ ¼­¸¸ »ç¿ë) ++ : ¿À¸¥ÂÊÀ̳ª ¿ÞÂÊ¿¡ ÀÖ´Â º¯¼öÀÇ °ªÀ» Çϳª Áõ°¡½ÃŲ´Ù. -- : ¿À¸¥ÂÊÀ̳ª ¿ÞÂÊ¿¡ ÀÖ´Â º¯¼öÀÇ °ªÀ» Çϳª °¨¼Ò½ÃŲ´Ù. ±×·¯¸é, ++¿Í --¿¬»êÀÚ¿¡ »ç¿ë¿¡ ´ëÇÑ ¿¹¸¦ µé¾îº¸ÀÚ. <¿¹Á¦1> ++,-- ¿¬»êÀÚÀÇ »ç¿ë <¸®½ºÆ®1> #include main() { int a=1, b=1; int aplus, plusb; aplus=a++; plusb=++b; printf(" A Aplus B plusB\n"); printf(" %3d %5d %5d %5d\n",a,aplus,b,plusb); getch(); } ÇÁ·Î±×·¥ÀÇ ½ÇÇà°á°ú´Â a°¡ 2, aplus°¡ 1, b°¡ 2, plusb°¡ 2°¡ µÈ´Ù. ¾Ö¸ÅÇÏÁö¸¸ ¾Æ·¡¸¦ º¸ÀÚ. aplus=a++; ÈÄÀ§Çü : a°¡ »ç¿ëµÈ ÈÄ, aÀÇ °ªÀÌ Çϳª Áõ°¡ÇÑ´Ù. plusb=++b; ÀüÀ§Çü : bÀÇ °ªÀÌ Çϳª Áõ°¡ÇÑ ÈÄ, b°¡ »ç¿ëµÈ´Ù. ±×·¯¸é, while (num<21) { /* numÀÌ 5À϶§, ¾î¶² °ªÀÌ ³ª¿Ã±î? */ printf(%d %d\n", num, num*num++); } ÀÌ ½ÄÀ» º¸¸é, 5 25¸¦ Âï°í, numÀ» 6À¸·Î Áõ°¡½ÃŰ´Â ÀÚ¿¬½º·¯¿î ½Äó·³ º¸À̳ª, ½ÇÁ¦·Î ½ÇÇà°á°ú´Â 6 25°¡ ÂïÈù´Ù. ¿Ö³ÄÇϸé printf()ÇÔ¼ö´Â ¸¶ Áö¸· ÀÎÀÚºÎÅÍ ¸ÕÀú ³Ñ±ä´Ù´Â ¿À¹¦ÇÑ Áø¸®°¡ ÀÖ´Ù. ans=num/2 + 5*(1 + num++); º¸Åë, num/2°¡ ¸ÕÀú °è»êÀÌ µÈ´Ù°í ¹Ï°í ½ÍÀ¸³ª, ½ÇÁ¦·Î´Â ¸ÕÀú numÀÌ Áõ °¡ÇÏ°í ³ª¼­ num/2¿¡ »ç¿ëµÈ´Ù. () ¶§¹®ÀÌ´Ù. À§ÀÇ ¿©·¯°¡Áö ¿¹¿¡¼­ º¸µíÀÌ ++/--¿¬»êÀÚÀÇ ÀüÀ§¿Í ÈÄÀ§ÀÇ Â÷ÀÌÁ¡À» ¸í È®È÷ ÀÌÇØÇϰí ÀÌ ¿¬»êÀÚ¸¦ ³Ê¹« ³²¿ëÇϰųª º¹ÀâÇÏ°Ô »ç¿ëÇÏÁö ¸»ÀÚ´Â ¶æ¿¡¼­ ÇÔÁ¤À» ¹Ì¸® ÆÄ ÇìÃÄ º¸¾Ò´Ù. 2. ġȯ ¿¬»êÀÚ ( +=, -=, *=, /=, %=, &=, |=, =, >>=, <<= ..) ´ëÀÔ ¿¬»êÀÚ¶ó°í ÇÏ´Â ÀÌ·¯ÇÑ ¿¬»êÀÚµéÀº ¸ðµÎ =¿Í °áÇյǾ ½ÄÀÇ º¹Àâ ¼ºÀ» ÁÙ¿©ÁØ´Ù. x += 3; Àº x=x + 3;°ú °°´Ù. x *= y + 1; Àº x=x * (y + 1);°ú °°´Ù. x += y += z=1; Àº z=1; y=y+z; x=x+y¿Í °°´Ù. ġȯÀº a=b;ó·³ ´Ü¼øÄ¡È¯ÀÏ ¼öµµ ÀÖ°í, a=b=c=d; ó·³ ´ÙÁßġȯÀÏ ¼öµµ ÀÖÀ¸¸ç, a += bó·³ º¹ÇÕġȯÀÏ ¼ö ÀÖ´Ù. ´ÙÁß Ä¡È¯ÀÇ °æ¿ì¿¡´Â ½ÄÀ» ¿ìÃø¿¡¼­ Æò°¡ÇÏ¿© ÁÂÃøÀÇ º¯¼ö·Î Â÷·Ê´ë·Î ġȯÇÏ°Ô µÈ´Ù.( Ç¥1ÂüÁ¶ - ¿ì°áÇÕ¼º ) a=b=c=d=1;Àº a=( b=( c=( d=1 )));°ú °°À¸¸ç, d=1;c=d;b=c;a=b;¿Í °°´Ù. a=b*c=d*e=1;Àº e=1; c=d*e; a=b*c;°ú °°´Ù. 3. °ü°è ¿¬»êÀÚ ( <, >, <=, >=, ==, != ) ÀÌ ¿¬»êÀÚµéÀº ÀÚ·áÀÇ Å©±â µîÀ» ÆÇ´ÜÇÒ ¶§ »ç¿ëÇϸç, ½ÄÀÇ °ªÀÌ ÂüÀ̸é 1, °ÅÁþÀ̸é 0ÀÇ °ªÀ» °®´Â´Ù. ±×¸®°í <=, >=´Â ºÎÈ£ÀÇ ¼ø¼­°¡ ¹Ù²î¸é ¾È µÈ´Ù. ±×¸®°í, °ü°è ¿¬»êÀÚµé Áß ==, !=´Â ´Ù¸¥ °ü°è ¿¬»êÀڵ麸´Ù ¿ì¼±¼ø À§°¡ ³·´Ù. ±×¸®°í Ãʺ¸ÀÚµéÀº ==À» ¾´´Ù´Â °Ô ±×¸¸ =(´ëÀÔ¿¬»êÀÚ)¸¦ ¾²´Â °æ¿ì°¡ ÀÖ´Ù. ÀÌ·¯ÇÑ °ÍÀº ¿À·ù¸¦ ã±â¿¡µµ Èûµé »Ó ¾Æ´Ï¶ó ½ÇÇà °á°ú¿¡µµ ½É°¢ÇÑ ¿µÇâÀ» ¹ÌÄ£´Ù. ==¿Í =´Â ¾ö¿¬È÷ ´Ù¸£¹Ç·Î ±â¾ïÇÏÀÚ! 6.25! (?) a < b < c ÀÇ Æò°¡ °úÁ¤ 1) a < b À̸é Âü(1)À̹ǷΠ1(a 2) a < b °¡ ¾Æ´Ï¸é °ÅÁþ(0)ÀÌ µÇ¹Ç·Î 0(a>=b) ±× ¿ÜÀÇ °æ¿ì´Â ¸ðµÎ 0ÀÌ´Ù. x > y + 2 ´Â °ü°è ¿¬»êÀÚµéÀÇ ¿ì¼±¼øÀ§°¡ »ê¼ú ¿¬»êÀڵ麸´Ù ³·À¸¹Ç·Î ( x > y ) + 2 °¡ ¾Æ´Ï¶ó, x > (y+2) ¿Í °°´Ù. ±×¸®°í °ü°è ¿¬»êÀÚµéÀº Á°áÇÕ¼ºÀ» °¡Áö¹Ç·Î ex != wye == zee ´Â ½ÇÁ¦ ·Î´Â ( ex != wye ) == zee;¿Í °°´Ù. À§¿¡¼­ º¸¾ÒµíÀÌ Ã³À½¿¡´Â ±×³É Áö³ªÄ¡±â ½¬¿ì³ª, Á°áÇÕ¼ºÀÌ³Ä ¿ì°áÇÕ¼º ÀÌ³Ä¿Í ¿¬»êÀÚµéÀÇ ¿ì¼± ¼øÀ§´Â Áß¿äÇϹǷΠÀß ¾Ë¾ÆµÎÀÚ. ¸¸ÀÏ ¸¶³É Çò°¥ ¸°´Ù¸é, ( )¸¦ ½ÊºÐ Ȱ¿ëÇÏ¿© ¿¡·¯ÀÇ ¼ÒÁö¸¦ ¾ø¾Ù Çʿ䰡 ÀÖ´Ù. 4. ³í¸® ¿¬»êÀÚ ( !, &&, || ) (1) ³í¸®ºÎÁ¤ ¿¬»êÀÚ(NOT) - ½ÄÀÇ °ªÀÌ 0(°ÅÁþ)À̸é '!½Ä'ÀÇ °ªÀº 1(Âü) ÀÌ µÇ°í ½ÄÀÇ °ªÀÌ ÂüÀÌ¸é °ÅÁþÀÌ µÈ´Ù. (2) ³í¸®°ö ¿¬»êÀÚ(AND &&) - ¿©·¯ ½ÄÁß ÇѰ³¶óµµ °ÅÁþÀÇ °ªÀÌ ÀÖÀ¸¸é °Å ÁþÀÌ µÈ´Ù. (3) ³í¸®ÇÕ ¿¬»êÀÚ(OR ||) - ¿©·¯ ½ÄÁß ÇѰ³¶óµµ ÂüÀ̸é ÂüÀÇ °ªÀ» °¡Áö °Ô µÈ´Ù. (cat > rat) && ( debt == 100 ) Àº µÎ ½ÄÀÌ ¸ðµÎ ÂüÀ̾î¾ß ÂüÀÌ µÈ´Ù. (cat > rat) || ( debt == 100 ) Àº µÑ Áß Çϳª¸¸ ÂüÀ̾ ÂüÀÌ µÈ´Ù. 5>2 && 4>7 Àº Çϳª¸¸ ÂüÀ̹ǷΠ°ÅÁþÀÌ´Ù. 5>2 || 4>7 Àº µÑ Áß Çϳª°¡ ÂüÀ̹ǷΠÂüÀÌ µÈ´Ù. !(4>7)Àº 4>7ÀÌ °ÅÁþÀ̹ǷΠÂüÀÌ µÈ´Ù. <¿¹Á¦2> x¿¡ °üÇÑ ¿©·¯ ¼ö½ÄÀÌ ÁÖ¾îÁ® ÀÖ´Ù. °¢ ½ÄÀÇ xÀÇ °ªÀÌ ¾î¶»°Ô ¼ö Çà µÇ´Â Áö ¿¹ÃøÇØ º¸¶ó. <¸®½ºÆ®2> 1: #include 2: main() 3: { 4: int x, y, z; 5: x=1, y=2, z=4; 6: x=x || y && z; 7: printf("%d\n",x); 8: x=1, y=2, z=3; 9: x=(x > y || z ==y && x 10: printf("%d\n",x); 11: x=y=z=1; 12: x=-y++ + ++z; 13: printf("%d\n%d\n%d\n",x,y,z); 14: } ¿ì¼±, À§ ÇÁ·Î±×·¥ÀÇ ½ÇÇà°á°ú´Â 1 0 1 2 2ÀÌ´Ù. ¿¹»ó°á°ú¿Í ¸Â¾Ò´Â°¡? ´Ù¸£´Ù¸é, ¾Æ·¡ÀÇ ¼³¸íÀ» Àß ÀоÀÚ. 4,5,6Çà¿¡¼­ 6ÇàÀº ¿ì¼±¼øÀ§¿¡ ÀǰÅÇϸé x=(x ||(y && z)); ·Î °ýÈ£¸¦ Ä¥ ¼ö°¡ ÀÖ´Ù. ¿©±â¿¡ ¼ö¸¦ ´ëÀÔÇØ º¸¸é, x=(1 ||(2 && 3))=(1 || 1)=1ÀÌ µÈ´Ù. (C¿¡¼­´Â ½ÄÀÇ °ªÀÌ 0ÀÌ ¾Æ´Ò ¶§´Â ¸ðµÎ ÂüÀ¸·Î °£ÁÖÇÑ´Ù) 8,9,10Çà¿¡¼­ 9ÇàÀ» ¿ì¼±¼øÀ§¿¡ ÀǰÅÇÏ¿© °ýÈ£¸¦ ÃÄ º¸¸é, x=(x > y)|| (z == y) && (x < z))¿Í °°´Ù. ¿©±â¿¡ ¼ö¸¦ ´ëÀÔÇØ º¸¸é °á°ú´Â 0ÀÌ µÈ´Ù. 11,12,13Çà¿¡¼­ 12ÇàÀº x=-( y++ ) + ( ++z )=-(1)+(2) ·Î¼­ x=1, y= 2, z=2°¡ µÈ´Ù. ±×·¯¸é, ¾Æ·¡¸¦ º¸ÀÚ. k=a && b++; ÀÇ ½ÄÀº ¾î¶»°Ô Æò°¡°¡ µÉ±î? 1) k=a°¡ °ÅÁþÀÏ ¶§: bÀÇ °ªÀº º¯ÇÏÁö ¾Ê´Â´Ù. 2) k=a°¡ ÂüÀÏ ¶§: bÀÇ °ªÀº 1¸¸Å­ Áõ°¡ÇÑ´Ù. =======> ´ë°­ °¨ÀÌ ¿À¸®¶ó°í ¹Ï´Â´Ù. 5. ºñÆ® ¿¬»êÀÚ ºñÆ® ¿¬»êÀÚ¶õ ºñÆ®Á¶ÀÛÀ» À§ÇØ ¾²ÀÌ´Â ¿¬»êÀÚÀÌ´Ù. ÁÖÀÇÇÒ Á¡Àº ¿ÀÆÛ·£ µå´Â Á¤¼ö ¶Ç´Â Á¤¼öÇüÀ̶ó¾ß ÇÑ´Ù. (1) ºñÆ®ÇÕ ¿¬»êÀÚ(OR- |) : Á¿ìÀÇ ½ÄÀ» ÀÌÁø¼ö·Î ÇÏ´Â ºñÆ®ÇÕÀ» ±¸ÇØÁØ ´Ù. a=117, b=216ÀÏ ¶§ a|bÀÇ °á°ú 117 => 0000 0000 0111 0101 216 => 0000 0000 1101 1000 ============================ 0000 0000 1111 1101 => 253 ºñÆ®ÇÕ ¿¬»êÀÚÀÇ ¿ëµµ´Â ¹Ù·Î ƯÁ¤ÇÑ ºñÆ®¸¦ 1·Î ¼¼Æ®½Ãų¶§ ÀÌ¿ëµÈ´Ù. a=117¶§ »óÀ§ 4ºñÆ®¸¦ 1·Î ÇÑ´Ù. 117 => 0000 0000 0111 0101 1111 0000 0000 0000 ============================ 1111 0000 0111 0101 => 1·Î ¼¼Æ®ÇÏ·Á´Â ºÎºÐ¸¸ 0À¸·Î (2) ºñÆ®°ö ¿¬»êÀÚ(AND- &) : Á¿ìÀÇ ½ÄÀ» 2Áø¼ö·Î ÇÏ´Â ºñÆ®°öÀ» ±¸ÇØÁØ ´Ù. a=117, b=216ÀÏ ¶§ a&bÀÇ °á°ú 117 => 0000 0000 0111 0101 216 => 0000 0000 1101 1000 ============================ 0000 0000 0101 0000 => 80 ºñÆ®°ö ¿¬»êÀÚÀÇ ¿ëµµ´Â ƯÁ¤ ºñÆ®¸¦ 0ÀÇ·Î ¸®¼ÂÇÏ·Á´Â °æ¿ì¿¡ ÀÌ¿ëµÈ´Ù. a=44149ÀÏ ¶§ »óÀ§ 4ºñÆ®¸¦ 0À¸·Î ÇÑ´Ù. 44149 => 1010 1100 0111 0101 0000 1111 1111 1111 ============================== 0000 1100 0111 0101 => 0À¸·Î ¸®¼ÂÇÏ·Á´Â ºÎºÐ¸¸ 1·Î (3) ¹èŸÀû ³í¸®ÇÕ ¿¬»êÀÚ(XOR- ^) : Á¿ìÀÇ ½ÄÀ» 2Áø¼ö·Î ÇÏ´Â ¹èŸÀû³í ¸®ÇÕÀ» ±¸ÇÑ´Ù. a=117, b=216ÀÏ ¶§ a^bÀÇ °á°ú 117 => 0000 0000 0111 0101 216 => 0000 0000 1101 1000 ============================ 0000 0000 1010 1101 => 173 µÎ °³ÀÇ ºñÆ®°¡ µ¿ÀÏÇϸé 0, ´Ù¸£¸é 1ÀÌ µÈ´Ù. (4) ºñÆ®¹ÝÀü ¿¬»êÀÚ(NOT- ~) : ~´Â ºÎÈ£¸¦ ¹ÝÀüÇÏ´Â ¿¬»êÀڷμ­ ºñÆ®1Àº 0À¸·Î, 0Àº 1·Î ¸¸µç´Ù. (1ÀÇ º¸¼ö ¿¬»êÀÚ¶ó°íµµ ÇÑ´Ù) a=117ÀÏ ¶§ ~aÀÇ °á°ú 117 => 0000 0000 0111 0101 ============================ 1111 1111 1000 1010 => -118 (5) shift ¿¬»êÀÚ( <<,>> ) : ÁÂÃø ½ÄÀÇ °á°ú¸¦ ¿ìÃø½Ä¸¸Å­ ºñÆ®¸¦ À̵¿ ½ÃŲ´Ù. ÀÌ ¶§ ¹Ð¸®´Â ÂÊÀÇ ¸Ç ³¡ ºñÆ®´Â ¹Ð·Á³ª¿À°í, ¹Ý´ëÂÊÀÌ ¸¶ Áö¸· ºñÆ®´Â 0À¸·Î ä¿öÁø´Ù. ÁÂÃøÀ¸·Î ½¬ÇÁÆ®ÇÑ °æ¿ì¿¡´Â ¸Ç ¿ìÃø¿¡ ¹«Á¶°Ç 0ÀÌ Ã¤¿öÁöÁö¸¸ ¿ì ÃøÀ¸·Î ½¬ÇÁÆ®ÇÑ °æ¿ì¿¡´Â ºÎÈ£°¡ ¾ø´Â Á¤¼öÀ̰ųª ¸Ç ÁÂÃøÀÇ ºñÆ® °¡ 0(¾ç¼ö)À̸é 0À» ä¿ì°í, ºÎÈ£°¡ ÀÖ´Â Á¤¼öÀÌ°í ¸Ç ÁÂÃøÀÇ ºñÆ® °¡ 1(À½¼ö)ÀÏ ¶§´Â 1À» ä¿î´Ù. Áï, ¾µµ¥ ¾øÀÌ ºÎÈ£¸¦ ¹Ù²ÙÁö ¾Ê´Â ´Ù°í º¼ ¼ö ÀÖ´Ù. a=117ÀÏ ¶§ a << 2 ÀÇ °á°ú 117 => 0000 0000 0111 0101 ============================ 00 0000 0001 1101 0100 <= 00 ¶ÇÇÑ ºñÆ® ¿¬»êÀÚ´Â µîÈ£¿Í °áÇÕÇØ¼­ ġȯ ¿¬»êÀÚ¸¦ ÀÌ·ê ¼ö ÀÖ´Ù. a=a >> b; ´Â a >>= b, a=a & b; ´Â a &= b¿Í °°´Ù. Ãʺ¸ÀÚµéÀº ºñÆ® ¿¬»êÀÚµéÀÇ ¾²ÀÓ¿¡ ´ëÇØ ÀDZ¸½ÉÀ» °¡ÁúÁö ¸ð¸£³ª, °í±Þ ÇÁ·Î±×·¥¿¡¼­´Â ¾ÆÁÖ ¿ä±äÇÏ°Ô ¾²À̰í ÀÖ´Ù. ºñÆ® ¿¬»êÀÌ CÀÇ Àú±Þ¾ð¾îÀÇ Æ¯¼ºÀ» ´ëº¯Çϴ Ư¡ ÁÖÀÇ Çϳª¶ó°í º¼ ¼ö ÀÖ´Ù. ƯÈ÷, ÇÑ±Û Ãâ·Â¿¡ ÀÖ¾î ¼­ÀÇ ºñÆ® ¿¬»êÀÇ ¾²ÀÓÀº ÇʼöÀûÀÌ´Ù. ¿©·¯ºÐµéÀÌ °í±Þ °úÁ¤À¸·Î ¿Ã¶ó°¡¸é ÀÌ·¯ÇÑ À̾߱âµéÀÌ ¸ðµÎ ÀÌÇØ°¡ °¥ °ÍÀÌ´Ù. Áö±Ý ¿ì¸®´Â ÀÌ·¯ÇÑ ºñÆ® ¿¬»ê ÀÇ ±â´É¿¡ ´ëÇØ¼­¸¸ ¾Ë°í ÀÖÀÚ. 6. ¼øÂ÷ ¿¬»êÀÚ( , ) - comma ¿¬»êÀÚ ¿©·¯°³ÀÇ ½ÄÀ» ÇÑ ÁÙ¿¡ ³ª¿­ÇÏ´Â ±â´ÉÀ» °¡Áø ¼øÂ÷ ¿¬»êÀÚ´Â ¿ì¼± ¼øÀ§°¡ °¡Àå ³·À¸¸ç, Á°áÇÕ¼ºÀ» °¡Áö¸ç, ÄÄ¸Ó ¿ìÃø¿¡ ÀÖ´Â ½ÄÀ» Æò°¡ÇÏ¿© ¾òÀº °ªÀ» °á°ú·Î ÇÑ´Ù. (¸®½ºÆ®2ÀÇ 5Çà¿¡ ¼øÂ÷ ¿¬»êÀÚ°¡ ¾²¿´´Ù) x=(y=1, y++); ´Â x=2, y=2 °¡ µÈ´Ù. x=(y=1, ++y); ´Â y=1, x=++yÀ̹ǷΠx=2, y=2°¡ µÈ´Ù. x=(y=1, y+1); Àº y=1, x=y+1À̹ǷΠx=2, y=1ÀÌ µÈ´Ù. x=(y=1, z=2); ´Â y=1, z=2, x=2°¡ µÈ´Ù. x=(y=3, y+2); ´Â y=3, x=5°¡ µÈ´Ù. <¿¹Á¦3> ¾Æ·¡ ÇÁ·Î±×·¥¿¡¼­ x¿Í yÀÇ °ªÀº ¾î¶² °á°ú°¡ ³ª¿À°Ú´Â°¡? <¸®½ºÆ®3> #include main() { int i,j; i=(j=15, j+4); printf("i=%d, j=%d\n",i,j); } °á°ú´Â Á÷Á¢ ½ÇÇàÇØ º¸½Ã±â ¹Ù¶õ´Ù. 7. Á¶°Ç ¿¬»êÀÚ ( ? : ) - ½Ä1 ? ½Ä2 : ½Ä3 if - else¹®À» ¿¬»êÀÚ·Î ±¸ÇöÇÑ °ÍÀ¸·Î¼­ 3Ç× ¿¬»êÀÚÀÌ´Ù. ½Ä1À» Æò°¡ÇÏ¿© Âü(1)ÀÌ¸é ½Ä2ÀÇ °ªÀ», °ÅÁþ(0)ÀÌ¸é ½Ä3ÀÇ °ªÀ» °¡Áø´Ù. ¿ì°áÇÕ¼ºÀ» °¡Áö¹Ç·Î ¿©·¯¹ø ±â¼úÇÏ¿´À» ¶§´Â ¸Ç ¿ìÃøºÎÅÍ Æò°¡µÈ´Ù. <¿¹Á¦4> if (a > b) c=a; else c=b; ¸¦ Á¶°Ç¿¬»êÀÚ·Î ±¸ÇöÇÏ¿©¶ó. ¶Ç, a=1,b=2ÀÏ ¶§ Á¶ °Ç ¿¬»êÀ» ÇàÇÑµÚ a, b, cÀÇ °ªÀº ¾î¶»°Ô µÇ°Ú´Â±¸¾Æ? <¸®½ºÆ®4> À§ÀÇ Á¶°Ç½ÄÀ» c=(a > b)? a: b;·Î Ç¥ÇöÇÒ ¼ö ÀÖ´Ù. #include main() { int a,b,c; a=1; b=2; c=(a > b) ? a:b; printf("a %d b %d c %d\n",a,b,c); } x=(y > z) ? 1 : (y < z) ? 2 : 3;Àº ´ÙÀ½°ú °°´Ù. i) y > z À̸é x=1ÀÌ µÈ´Ù. ii) y > z°¡ ¾Æ´Ï¸é y < z¸¦ Æò°¡ÇÑ´Ù. y < zÀ̸é x=2°¡ µÈ´Ù. iii) i) ii) µÑ´Ù ¾Æ´Ï¸é x=3 ÀÌ µÈ´Ù. À§ÀÇ ½ÄÀ» if - else¹®À¸·Î °íÄ¡¸é ¾Æ·¡¿Í °°´Ù. if (y > z) x=1; else if (y < z) x=2; else x=3; 8. °£Á¢ ¿¬»êÀÚ ( * ) Æ÷ÀÎÅͶó°íµµ Çϸç, ½ÄÀÌ °¡¸£Å°´Â ¹øÁö¿¡ ÀúÀåµÈ ³»¿ëÀ» Ç¥½ÃÇÏ´Â ¿¬»ê ÀÚÀÌ´Ù. ´ÜÇ× ¿¬»êÀڷμ­ °öÇϱâ(*)Çϰí´Â ÁúÀûÀ¸·Î Ʋ¸°´Ù. ¸ðµç ÀÚ·á´Â ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸®¿¡ ÀúÀåµÇ¸ç, ¸Þ¸ð¸®´Â ¹ÙÀÌÆ® ´ÜÀ§·Î ¹øÁö °¡ ºÙ¾îÀÖ´Ù. Æ÷ÀÎÅÍ´Â ±× º¯¼öÀÇ °ªÀÌ °¡¸®Å°´Â ¹øÁöÀÇ ÀڷḦ ÁöÁ¤ÇÏ´Â °ÍÀ̶ó°í ¿ì¼± ¾Ë°í ÀÖÀÚ. 9. ¹øÁö ¿¬»êÀÚ ( & ) - & º¯¼ö ¹øÁö ¿¬»êÀÚ´Â ¹Ù·Î ´ÙÀ½¿¡ ¿À´Â º¯¼öÀÇ ¹øÁö ÀÚü¸¦ ±¸ÇØ ÁÖ´Â ¿¬»êÀÚÀÌ ´Ù. ¼öÄ¡ ÀڷḦ ÀԷ¹ÞÀ» °æ¿ì(scanf)¿¡ ¾´ ±â¾ïÀÌ ³¯ °ÍÀÌ´Ù. &´Â »ó¼ö ¿¡´Â ¾µ ¼ö ¾øÀ¸¸ç, ÀÌ ¿¬»êÀÚ°¡ ºÙÀº °æ¿ì¿¡´Â »õ·Î¿î °ªÀ» ´ëÀÔÇÒ ¼ö ¾ø ´Ù. Áï &3 À̳ª &x=1234 µîÀº ¿¡·¯ÀÌ´Ù. À§ <¸®½ºÆ®3>ÀÇ ¸Ç ¸¶Áö¸· Çà¿¡ printf("%x ,&i)¸¦ »ðÀÔ½ÃÄÑ º¸¾Æ¶ó. º¯¼ö iÀÇ ÁÖ¼Ò°ªÀÌ 16Áø¼ö·Î Ç¥½Ã µÉ °ÍÀÌ´Ù. 10. cast ¿¬»êÀÚ - (Çü) ¿¬»êÀÚ Çüº¯È¯ ¿¬»êÀÚ´Â ¿øÇÏ´Â µ¥ÀÌÅÍÀÇ ÇüÀ» °ýÈ£·Î ¹­¾î ¿¬»êÀÚ ¾Õ¿¡ ÁöÁ¤ÇØ µÒÀ¸·Î½á µ¥ÀÌÅÍ ÇüÀ» º¯È¯½ÃŰ´Â ¿ªÇÒÀ» ÇÑ´Ù. <¿¹Á¦5> cast¿¬»êÀÇ º¸±â - ½ÇÇà°á°ú¸¦ ¿¹ÃøÇØ º¸¶ó. <¸®½ºÆ®5> 1: #include 2: main() 3: { 4: char ch; 5: int i; 6: float fl; 7: 8: fl=i=ch='A' 9: printf("ch=%c,i=%d,fl=%2.2f\n",ch,i,fl); 10: 11: ch++; 12: i=fl + 2 * ch; 13: fl=2.0 * ch + 1; 14: printf("ch=%c, i=%d, fl=%2.2f\n",ch,i,fl); 15: 16: ch=2.0e30; 17: printf("Now ch=%c\n",ch); 18: } <¼³¸í> 8,9Çà: ¹®ÀÚ 'A'´Â º¯¼ö ch¿¡ ¹®ÀÚ·Î ÁöÁ¤µÊ. Á¤¼öº¯¼ö i´Â 'A' ¸¦ Á¤¼ö·Î º¯È¯ÇÑ 65¸¦ ¹ÞÀ½. flÀº 65¸¦ 65.00À¸·Î º¯È¯ÇÑ °ªÀ» ¹ÞÀ½. 11,14Çà: ¹®ÀÚº¯¼ö 'A'¸¦ Á¤¼ö 65·Î º¯È¯ÇÏ°í ¿©±â¿¡ 1À» ´õÇÔ. ±×¸®°í Á¤¼ö 66À» ¹®ÀÚ B·Î º¯È¯ÇÏ¿© ch¿¡ ÀúÀåÇÔ 12,14Çà: chÀÇ °ªÀ» Á¤¼ö·Î º¯È¯ÇÑ ´ÙÀ½ 2¿Í °öÇÔ. °á°ú(132)¸¦ ½Ç¼ö·Î º¯È¯ÇØ fl°ú ´õÇÔ. °á°ú 197.00Àº Á¤¼ö·Î ¹Ù²î¾î i¿¡ ÀúÀåµÊ. 13,14Çà: chÀÇ °ª 'B'¸¦ ½Ç¼ö·Î º¯È¯ÇØ 2.0°ú °öÇÔ. iÀÇ °ª(197)À» ½Ç¼ö ·Î º¯È¯ÇØ ´õÇÑ´Ù. °á°ú(329.00)Àº fl¿¡ ÀúÀåµÊ. 16,17Çà: ch¸¦ ¸Å¿ì Å« ¼ö·Î ġȯÇϹǷΠ¿¹±âÄ¡ ¾ÊÀº °á°ú°¡ ÀϾ. <¿¹Á¦6> cast ¿¬»êÀÚÀÇ »ç¿ë ¿¹ <¸®½ºÆ®6> main() { int i,j; i=372; j=5; printf("%5.3f\n", (float)i / (float)j ); } 11. sizeof ¿¬»êÀÚ sizeof´Â ¹Ù·Î ´ÙÀ½¿¡ ³ª¿À´Â º¯¼ö³ª ÀÚ·áÇüÀÌ Â÷ÁöÇÏ´Â ¸Þ¸ð¸®ÀÇ ¹ÙÀÌÆ® ¼ö¸¦ ±¸ÇØÁÖ´Â ¿¬»êÀÚÀÌ´Ù. char c; sizeof(c); 1ÀÇ °ªÀ» °¡Áø´Ù. sizeof(int); 2ÀÇ °ªÀ» °¡Áø´Ù. ÀÌ·¸°Ô ÇØ¼­ CÀÇ ¸ðµç ¿¬»êÀÚ¿¡ ´ëÇØ °£·«ÇÏ°Ô ³ª¸¶ ¾Ë¾Æ º¸¾Ò´Ù. Ãʺ¸ÀÚ µé¿¡°Õ ºÎ´ã½º·¯¿î ¾çÀ̰ÚÁö¸¸- ¶Ç, ¾µµ¥¾ø´Â ¿¬»êÀÚ°¡ ¿ÖÀ̸® ¸¹³Ä°í -, C¾ð¾î´Â °í±Þ¾ð¾î¿Í Àú±Þ¾ð¾îÀÇ Æ¯Â¡À» °ñ°í·ç °®Ãß°í ÀÖ°í, Àú±Þ¾ð¾îÀÇ Æ¯¼ºÀ» ½ÊºÐ Ȱ¿ëÇÏ·Á¸é ÀÌ·¯ÇÑ ¿¬»êÀÚµéÀ» Àß »ç¿ëÇÒ ÁÙ ¾Ë¾Æ¾ß ÇÑ´Ù. 12. ¿¬»êÀÚ¸¦ »ç¿ëÇÑ ¿¹Á¦µé ¸î °¡Áö ¿¹Á¦¸¦ ÅëÇÏ¿© ¿¬»êÀÚµéÀÇ ½ÇÁ¦ »ç¿ë¹ý¿¡ °üÇÏ¿© »ìÆìº¸ÀÚ. <¿¹Á¦7> ÀÓÀÇÀÇ Á¤¼ö¸¦ ÀÔ·Â¹Þ¾Æ ±×¼ö¸¦ 2Áø¼ö·Î Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥ÀÛ¼º. (C´Â ÀÌÁø¼ö¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù) <¸®½ºÆ®7> #include main() { int i,n,k; printf("Á¤¼öÀÔ·Â: "); scanf("%d", &n); for ( i=15; i >= 0; i--) { k=(n >> i) & 0x1; /* ½¬ÇÁÆ®¿¬»ê, ºñÆ®¿¬»ê */ printf("%1d",k); } } <Âü°í> C¿¡¼­ 8Áø¼öÀÇ Ç¥±â´Â ¼öÄ¡¾Õ¿¡ 0À» ºÙ¿© Ç¥½ÃÇϰí, 16Áø¼ö´Â 0x¸¦ ºÙ¿© Ç¥½ÃÇÑ´Ù. ÀÌ·¯ÇÑ ¼öµéÀº Ç×»ó ºÎÈ£¾ø´Â Á¤¼ö·Î Ãë±ÞÇÑ´Ù. printf ()ÇÔ¼öÀÇ Æ÷¸ËÄÚµå´Â °¢°¢ %o¿Í %xÀÌ´Ù. C¿¡¼­ 2Áø¼ö¸¦ Ãâ·ÂÇÏ·Á¸é ÃÖ»óÀ§ ºñÆ®ºÎÅÍ ±× ºñÆ® ÆÐÅÏ(1/0)À» Ãâ·Â½Ã Ű´Â ¹æ¹ýÀ» »ç¿ëÇÑ´Ù. ºñÆ® ÆÐÅÏÀ» Ãâ·ÂÇÏ´Â ¹æ¹ýÀº ¿ì¼± Ãâ·ÂÇÏ·Á´Â ºñÆ®¸¦ ÃÖÇÏÀ§ ºñÆ®°¡ µÇ µµ·Ï ¿ì·Î ½¬ÇÁÆ®½ÃŲ ´ÙÀ½ ÀÌ °ªÀ» 0000000000000001°ú &(AND) ¿¬»êÀ» ½Ã ÄÑ, ÃÖÇÏÀ§ ºñÆ®¸¦ Á¦¿ÜÇÑ ´Ù¸¥ ¸ðµç ºñÆ®µéÀº 0ÀÇ·Î «¼ÇÑ´Ù. ¸¸¾à, ÀÚ¸® ¼ö°¡ 16°³À̸é ÀÌ·± ÀÛ¾÷À» 16¹ø ¹Ýº¹ÇÏ¿© ¾ò¾îÁø °ªÀ» Çϳª¾¿ Ãâ·ÂÇÑ´Ù. <±×¸²1> »óÀ§¿¡¼­ 13¹øÂ° ºñÆ®ÆÐÅÏÀ» Á¶»çÇÏ´Â °úÁ¤ * 0 1 0 1 1 0 1 0 1 0 0 0 1 1 1 0 ¿ø·¡ÀÇ ¼ö 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 ¿ì·Î 13ȸ ½¬ÇÁÆ® 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1°ú & ¿¬»ê ==================================== 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 13¹øÂ° ÆÐÅÏÀÌ ±¸ÇØÁ³´Ù! <¿¹Á¦8> 123456789 ¿Í °°ÀÌ Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ¿©¶ó. *0000000* 1 (ÈùÆ®: °¡·Î+¼¼·ÎÀÇ °ªÀÌ 10ÀÏ ¶§¿Í 0*00000*0 2 °¡·Î¿Í ¼¼·ÎÀÇ °ªÀÌ °°À» ¶§ 00*000*00 3 *À» Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥) 000*0*000 4 0000*0000 5 000*0*000 6 00*000*00 7 0*00000*0 8 *0000000* 9 <¸®½ºÆ®8> main() { int i,j; for (i=1;i <= 9;i++) for (j=1;j <= 9; j++) i == j || i + j == 10 ? printf("*") : printf("0"); printf("\n"); } À§ÀÇ ÇÁ·Î±×·¥¿¡¼­ ´Ü¹®°ú º¹¹® È¥µ¿À¸·Î ÀÎÇÑ ¿¡·¯°¡ ÀÖ´Ù. ±×°ÍÀ» Á÷ Á¢ ã¾Æº¸±â ¹Ù¶õ´Ù. À̹ø Àå¿¡¼­´Â CÀÇ ¿¬»êÀÚ¿¡ ´ëÇØ ¾Ë¾Æ º¸¾Ò´Ù. µÇµµ·Ï ÀÌÇØÇϱ⠽±µµ·Ï ¼³¸íÇÏ·Á ³ë·ÂÀ» Çß´Ù. 7¹ø Á¤µµ ÀÐÀ¸¸é ¿Ü¿ìÁö ¸ø ÇÒ °Íµµ ¾ø´Ù. ¿Ø¸¸ÇÑ C ÀÔ¹®¼­¿¡ ¹ö±Ý°¡´Â ºÐ·®ÀÇ ³»¿ëÀ̹ǷΠ'ÇÐ'½ÇÈ÷ ¿¹Á¦¸¦ ¼öÇàÇØ º¸¸é ¸ðµÎ ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.