汉罗塔
2.3 数据结构的设计
根据需求分析将用递归算法实现汉诺塔演示过程的数据结构的设计如下: ① 用一个结构体数组struct M { int data[15]; int top; }num[3];来定
义三个塔座的高度,以及每个塔座存放每个盘块的代号。
② 定义两个变量cx,cy来分别表示程序演示步骤的横坐标和纵坐标的变
化。
③ 用函数void move(char x,char y,struct M num[3]);来表示盘块移动
的具体过程;并在move函数中调用函数void hanoi(char x,char y,char z,int n,struct M num[3]);来表示递归调用的过程;最后用一个初始化函数void Init(void)来对整个程序进行初始化,并调用move函数。