汉诺塔问题
来源:互联网 发布:豆萁软件下载 编辑:程序博客网 时间:2024/06/08 05:31
问题及代码:
/*
* Copyright (c) 2015, 烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名称:1.cpp
* 作 者:于东林
* 完成日期:2015年9月10日
* 版本号:v3.0
*
* 问题描述:经典汉诺塔,A.B.C三个柱子,借助于B,将A上边的盘子,依次加到C柱子上。
* 输入描述:n为盘子数,即为将m个盘子在A,B,C三个柱子上变换。
* 程序输出:变换的过程
*/
#include <stdio.h> void move(int, char, char,char); int main() { int m; scanf("%d",&m); move(m,'A','B','C'); return 0; } void move(int n, char A, char B,char C) { if(n==1) printf("%c-->%c\n", A, C); //递归的终止条件 else { move(n-1,A,C,B); printf("%c-->%c\n", A, C); move(n-1,B,A,C); } }
运行结果:
知识点总结:
递归是循环中有循环,实现了计算的规律。
学习心得:
C语言的逻辑循环让程序变得更加严谨,今后学习中要好好理清思路,谨慎思考。
0 0
- 汉诺塔问题 背包问题
- 递归问题,汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题.
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 汉诺塔问题
- 如何在STM32F10x_StdPeriph_Template基础上建立自己的MDK工程(二)
- halcon学习之tuple按位运算
- 《我与大数据的365天》 ——(1 ) 【开启探索数据之旅】
- 非通知实现夜间模式
- 人工意识(智能)的研究方向
- 汉诺塔问题
- 项目2-程序的多文件组织
- 初涉Grunt
- Java使用JNI调用C++实现Hello jni
- hadoop笔记之切片大小控制
- 关于ffmpeg的第一次尝试
- 第二周—项目3 体验复杂度—两种排序算法的运行时间
- ArrayList和LinkedList的区别
- 关于ARGB_8888、ALPHA_8、ARGB_4444、RGB_565的理解