void hanoi (int n, char x,char y, char z)
//将塔座x上按直径由小到大且自上而下编号为1至n个圆盘按规则搬到塔座z上,y可用作辅助塔座。
//搬动操作move(x,n,z)可定义为(c是初值为0的全局变量,对搬动计数);
//printf("%i.Move disk %i from %c to %c\n", ++c,n, x, z);
{
if(n==1)
move(x,1,z);
else{
hanoi(n-1, x, z, y);//第五步
move(x, n. z);//第六步
hanoi(n-1, y, x, z);//第七步
}
}
这里的5、6、7都不怎么能理解。
当n=3的时候,到5的时候怎么到move去啊,还有n=1的时候是不是只有x柱子上只有1个的时候到z柱么!