四柱子汉诺塔c语言程序代码,汉诺塔n=4(4个盘)c语言递归编程代码
满意答案
/****************************
汉诺塔的算法就3个步骤:
第一,把a上的n-1个盘通过c移动到b。
第二,把a上的最下面的盘移到c。a成了空的。
第三,因为n-1个盘全在b上了,所以把b当做a.
重复以上步骤就好了。所以算法看起来就简单多了。
******************************/
#include
static int m=0;
void move(int n,char a,char b,char c)
{
if(n==1)
{
m++;
printf("第 %d 次移动:\n", m );
printf("\t%c->%c\n",a,c); //当n只有1个的时候直接从a移动到c
}
else
{
move(n-1,a,c,b); //第n-1个要从a通过c移动到b
m++;
printf("第 %d 次移动:\n", m );
printf("\t%c->%c\n",a,c);
move(n-1,b,a,c); //n-1个移动过来之后b变开始盘,b通过a移动到c,这边很难理解
}
}
int main()
{
int n=4;
//printf("请输入要移动的块数:");
// scanf("%d",&n);
move(n,'a','b','c');
return 0;
}
02分享举报
四柱子汉诺塔c语言程序代码,汉诺塔n=4(4个盘)c语言递归编程代码相关推荐
- 大一c语言程序设计项目教程课,C语言程序设计项目教程 教学课件 ppt 作者 王瑞红 C语言程序设计项目教程习题答案...
C语言程序设计项目教程 教学课件 ppt 作者 王瑞红 C语言程序设计项目教程习题答案 习题答案模块 1 C 语言基础知识1. 选择题(1)C 语言中运算对象必须是整型的运算符是 (B ).A. %= ...
- 在c语言程序中将数据分为两种,2012年计算机二级C语言考点归纳汇总(一至四章)...
第1章程序设计基本概念考点归纳 1.1 C语言的特点 C语言是近年来非常流行的语言,很多人宁愿放弃已经熟悉的其他语言而改用C语言,其原因是C语言有优于其他语言的一系列特点.下面是C语言的主要特点: ( ...
- c语言程序做四则运算还要余数,大整数四则运算 高质量C语言程序.doc
大整数四则运算 高质量C语言程序 设计题目: 大整数的四则运算 1. 功能简介:编写出实现大整数之间相加,相减,相乘,相除的程序,并输出计算结构. 课程设计要求:采用模块化程序设计 源程序中应有足够的 ...
- C 语言程序设计基础不好,想10天考国二C语言程序设计证书,可能吗?
实话告诉你:基本不可能!!! 除非你真的是一个学习力,逻辑能力,数学能力有很深的造诣的人! 这并不是在打击你考试的自信心. 为什么这么说呢?来看看计算机二级C语言程序考试(以下简称二级C),需要考什么 ...
- c语言 数组放空自己,DS1307 C语言程序 - ds1307怎么使用(ds1307引脚图及功能_c语言程序及典型应用电路)...
DS1307 C语言程序 //******************************************************************** //************** ...
- 一个c语言程序有两个源文件,建立多个源文件的C语言程序.pdf
建立多个源文件的C语言程序 建立多个源文件的C语言程序 输入.调试并执行一个C++程序 1. 建立多个源文件的C语言程序 一个C语言程序不一定只包含一个文件,它可以由多个文 件组成,比如它可以包含多 ...
- c语言程序能在android,android环境下编译并运行C语言程序
我的环境: Ubuntu12.04 Android2.2 这里的C语言程序指的是运行与android系统的Linux内核上程序,目前为止有两种方法:第一种是自动编译,第二种是手动编译.这两种方法适用于 ...
- c语言程序员算法题库,100个超级经典地C语言算法,程序员必须练习.doc
实用标准文案 文档大全 POJ上做做ACM的题 语言的学习基础,100个经典的算法 C语言的学习要从基础开始,这里是100个经典的算法-1C语言的学习要从基础开始,这里是100个经典的算法 题目:古典 ...
- 自动化测试C语言程序,自动化测试程序之一自定义键盘的模拟测试程序(C语言)...
一.测试程序编写说明 我们做的终端设备上运行的是QT应用程序,使用自定义的键盘接口.经过测试人员长时间的人机交互测试,来确认系统的功能是否满足需求.现在需要编写一个自动化的测试程序,能够按照预设的脚本 ...
最新文章
- [转]软件项目版本号的命名规则及格式
- 如何利用 notedown 完成 ipynb与markdown之间的格式转换?
- 字符串操作--宽窄字符转换
- leetcode算法题--多米诺与托米诺平铺★
- 使用python的Flask实现一个RESTful API服务器端
- 计算机应用基础知识点提纲,计算机应用基础复习提纲
- 汇编语言-008(条件跳转应用 、loopnz 条件循环指令使用 、loopz 条件循环指令使用 、 if语句编写汇编时 、while语句编写汇编时 、循环内的if语句嵌套)
- android开发中eclipse里xml开发的自动提示和使用帮助快捷键提示
- 端到端测试哪家强?不容错过的Cypress
- cpuv(cpuv2和v3有什么区别)
- (Spring+SpringMVC+mybatis)SSM企业职工工资管理系统
- Windows NT 就是指现在的 Windows
- Windows10系统下对于鲁大师一类捆绑流氓软件的解决方法
- 角色建模师来谈谈VR游戏角色制作流程
- 天猫精灵智能家居对接,及天猫iot官网配置图文讲解(一)
- OpenCV-图像翻转函数cv::filp
- mysql报错:1406, Data too long for column
- 试着用人话说说 使命 愿景 价值观,以及人的三观
- 02 编辑素材和Tilemap
- 项目实战:简易俄罗斯方块(附源码)
热门文章
- C# Winform中RichTextBox如何设置文本某段字体的颜色
- 【Linux】软连接/符号链接和硬链接
- 入门小白想学电影CG短片是如何制作的,看完这篇文章!
- ios Xib的几种用法[转]
- windows服务器的配置
- 如何复制copy别人的网站
- ProgrammingCodding的困惑
- 解决报错httpd: Could not reliably determine the server‘s fully qualified domain name
- 大数据开发步骤和流程
- Altium Designer 使用技巧