c++------汉诺塔的递归实现

#include <iostream>

using namespace std;

   void move(int n,char A,char B,char C){

        if(n==1){

            cout<<A<<“–>”<<C<<endl;    //只输出起止位置

        }else{

             move(n-1,A,C,B);     //先n-1个将A经C移动到B

             move(1,A,B,C);        //将最大的一个移动到C

             move(n-1,B,A,C);     //将前n-1个由B经A移动到C

        }

   }

int main()

{

     int n;

     cin>>n;

     move(n,’a’,’b’,’c’);

     return 0;

}

    原文作者: 汉诺塔问题
    原文地址: https://blog.csdn.net/qq_40876893/article/details/79646545
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞