CÓïÑÔº¯Êý£¨¶þ£©
¡¾Àý8.6¡¿HanoiËþÎÊÌâ
Ò»¿é°åÉÏÓÐÈý¸ùÕ룬A£¬B£¬C¡£AÕëÉÏÌ×ÓÐ64¸ö´óС²»µÈµÄÔ²ÅÌ£¬´óµÄÔÚÏ£¬Ð¡µÄÔÚÉÏ¡£Èçͼ5.4Ëùʾ¡£Òª°ÑÕâ64¸öÔ²ÅÌ´ÓAÕëÒÆ¶¯CÕëÉÏ£¬Ã¿´ÎÖ»ÄÜÒÆ¶¯Ò»¸öÔ²ÅÌ£¬Òƶ¯¿ÉÒÔ½èÖúBÕë½øÐС£µ«ÔÚÈκÎʱºò£¬ÈκÎÕëÉϵÄÔ²Å̶¼±ØÐë±£³Ö´óÅÌÔÚÏ£¬Ð¡ÅÌÔÚÉÏ¡£ÇóÒÆ¶¯µÄ²½Öè¡£
±¾ÌâËã·¨·ÖÎöÈçÏ£¬ÉèAÉÏÓÐn¸öÅÌ×Ó¡£
Èç¹ûn=1£¬Ôò½«Ô²ÅÌ´ÓAÖ±½ÓÒÆ¶¯µ½C¡£
Èç¹ûn=2£¬Ôò£º
1.½«AÉϵÄn-1(µÈÓÚ1)¸öÔ²ÅÌÒÆµ½BÉÏ£»
2.ÔÙ½«AÉϵÄÒ»¸öÔ²ÅÌÒÆµ½CÉÏ£»
3.×îºó½«BÉϵÄn-1(µÈÓÚ1)¸öÔ²ÅÌÒÆµ½CÉÏ¡£
Èç¹ûn=3£¬Ôò£º
A. ½«AÉϵÄn-1(µÈÓÚ2£¬ÁîÆäΪn`)¸öÔ²ÅÌÒÆµ½B(½èÖúÓÚC)£¬²½ÖèÈçÏ£º
(1)½«AÉϵÄn`-1(µÈÓÚ1)¸öÔ²ÅÌÒÆµ½CÉÏ¡£
(2)½«AÉϵÄÒ»¸öÔ²ÅÌÒÆµ½B¡£
(3)½«CÉϵÄn`-1(µÈÓÚ1)¸öÔ²ÅÌÒÆµ½B¡£
B. ½«AÉϵÄÒ»¸öÔ²ÅÌÒÆµ½C¡£
C. ½«BÉϵÄn-1(µÈÓÚ2£¬ÁîÆäΪn`)¸öÔ²ÅÌÒÆµ½C(½èÖúA)£¬²½ÖèÈçÏ£º
(1)½«BÉϵÄn`-1(µÈÓÚ1)¸öÔ²ÅÌÒÆµ½A¡£
(2)½«BÉϵÄÒ»¸öÅÌ×ÓÒÆµ½C¡£
(3)½«AÉϵÄn`-1(µÈÓÚ1)¸öÔ²ÅÌÒÆµ½C¡£
µ½´Ë£¬Íê³ÉÁËÈý¸öÔ²Å̵ÄÒÆ¶¯¹ý³Ì¡£
´ÓÉÏÃæ·ÖÎö¿ÉÒÔ¿´³ö£¬µ±n´óÓÚµÈÓÚ2ʱ£¬Òƶ¯µÄ¹ý³Ì¿É·Ö½âΪÈý¸ö²½Ö裺
µÚÒ»²½ °ÑAÉϵÄn-1¸öÔ²ÅÌÒÆµ½BÉÏ£»
µÚ¶þ²½ °ÑAÉϵÄÒ»¸öÔ²ÅÌÒÆµ½CÉÏ£»
µÚÈý²½ °ÑBÉϵÄn-1¸öÔ²ÅÌÒÆµ½CÉÏ£»ÆäÖеÚÒ»²½ºÍµÚÈý²½ÊÇÀàͬµÄ¡£
µ±n=3ʱ£¬µÚÒ»²½ºÍµÚÈý²½ÓÖ·Ö½âΪÀàͬµÄÈý²½£¬¼´°Ñn`-1¸öÔ²ÅÌ´ÓÒ»¸öÕëÒÆµ½ÁíÒ»¸öÕëÉÏ£¬ÕâÀïµÄn`=n-1¡£ ÏÔÈ»ÕâÊÇÒ»¸öµÝ¹é¹ý³Ì£¬¾Ý´ËËã·¨¿É±à³ÌÈçÏ£º
move(int n,int x,int y,int z)
{
if(n==1)
printf("%c-->%c\n",x,z);
else
{
move(n-1,x,z,y);
printf("%c-->%c\n",x,z);
move(n-1,y,x,z);
}
}
main()
{
int h;
printf("\ninput number:\n");
scanf("%d",&h);
printf("the step to moving %2d diskes:\n",h);
move(h,'a','b','c');
}
´Ó³ÌÐòÖпÉÒÔ¿´³ö,moveº¯ÊýÊÇÒ»¸öµÝ¹éº¯Êý£¬ËüÓÐËĸöÐβÎn,x,y,z¡£n±íʾԲÅÌÊý£¬x,y,z·Ö±ð±íʾÈý¸ùÕë¡£move º¯ÊýµÄ¹¦ÄÜÊǰÑxÉϵÄn¸öÔ²ÅÌÒÆ¶¯µ½zÉÏ¡£µ±n==1ʱ£¬Ö±½Ó°
Ïà¹ØÎĵµ£º
Ŀǰ¸÷ÖÖLinux·¢Ðа涼֧³ÖUTF-8±àÂ룬µ±Ç°ÏµÍ³µÄÓïÑÔºÍ×Ö·û±àÂëÉèÖñ£´æÔÚһЩ»·¾³±äÁ¿ÖУ¬¿ÉÒÔͨ¹ýlocaleÃüÁî²é¿´£º
$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPE ......
ÒªÁ˽âÖ¸Õë,¶à¶àÉÙÉÙ»á³öÏÖһЩ±È½Ï¸´ÔÓµÄÀàÐÍ,ËùÒÔÎÒÏȽéÉÜ
Ò»ÏÂÈçºÎÍêÈ«Àí½âÒ»¸ö¸´ÔÓÀàÐÍ,ÒªÀí½â¸´ÔÓÀàÐÍÆäʵºÜ¼òµ¥,Ò»
¸öÀàÐÍÀï»á³öÏֺܶàÔËËã·û,ËûÃÇÒ²ÏñÆÕͨµÄ±í´ïʽһÑù,ÓÐÓÅÏÈ
¼¶,ÆäÓÅÏȼ¶ºÍÔËËãÓÅÏȼ¶Ò»Ñù,ËùÒÔÎÒ×ܽáÁËÒ»ÏÂÆäÔÔò:
´Ó±äÁ¿Ãû´¦Æð,¸ù¾ÝÔËËã·ûÓÅÏȼ¶½áºÏ,Ò»²½Ò»²½·ÖÎö.
ÏÂÃæÈÃÎÒÃÇÏÈ´Ó¼òµ¥µÄÀàÐ ......
±ê×¼C¿ØÖÆÌ¨³ÌÐòÒ²¿ÉÒÔ×Ô¶¨ÒåÎÄ×ÖÊä³öÑÕÉ«£¬ÈôòÓ¡ÐÅÏ¢¸üÏÊÃ÷£¬ÔÚdebugµÄʱºòÌØ±ðÓÐÓ᣷½·¨ºÜ¼òµ¥£º
ת×Ô£ºhttp://www.diybl.com/course/3_program/c/c_js/20090303/157456.html
ÏÈ´ÓÒ»¸öÀý×Ó¿ªÊ¼
printf("\033[31m ####----->> \033[32m" "hello\n" "\033[m");
ÑÕÉ«·ÖΪ±³¾°É«ºÍ×ÖÌåÉ«£¬30~39ÓÃÀ´ÉèÖÃ×ÖÌåÉ« ......
#include <stdlib.h>
#include<stdio.h>
#include<time.h>
#define randomize() srand((unsigned)time(NULL)) //¶¨ÒåÒ»¸öºê
int main(void)
{
int i;
printf("Ten random numbers from 0 to 99\n\n");
randomize();
for(i=0; i<100; i++)
{
printf("%d\n", rand() % 100);
sleep(1) ......