} void hanoi(int n,char one ,char two ,char three)//把n個盤子從 one借助two移動到t here { void move(char a,char b); if(n==1) move(one,three); else { hanoi(n-1,one,three,two);//把n-1個盤子 從 one借助there移動到two move(one,three); hanoi(n-1,two,one,three);//把n-1個盤子 從 two借助one移動到there } } void move(char a,char b) { printf("%c-->%c\n",a,b); }
可以這麼理解,它就是一個遞歸的調用