首页 > 代码库 > 汉诺塔问题--递归实现
汉诺塔问题--递归实现
/*汉诺塔问题*/#include <stdio.h>#include <stdlib.h>//定义n为移动的层数,x,y,z分别代表三根柱子,表示把前n层塔牌从x借助y移动到zvoid move(int n,char x,char y,char 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); }}int main(){ int m; // char X,Y,Z; printf("请输入层数: \n"); scanf("%d",&m); move(m,‘X‘,‘Y‘,‘Z‘);}
汉诺塔问题--递归实现
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。