/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:席翱翔
*完成日期:2013年 11月26日
*版本号:v1.0
*对任务及求解方法的描述部分:
*输入描述:
*问题描述:
*程序输出:
*问题分析:
*算法设计:
*/
#include <iostream>
using namespace std;
void move(int ,char ,char ,char );
void y(char,char);
int main()
{
int m;
cout<<"请输入盘子的个数:"<<endl;
cin>>m;
cout<<"移动步骤:"<<endl;
move(m,'A','B','C');
return 0;
}
//有m个盘子,
void move(int m,char A,char B,char C)
{
if(m==1)
y(A,C);
else
{
move(m-1,A,C,B);
y(A,C);
move(m-1,B,A,C);
}
}
void y(char x,char y)
{
cout<<x<<"-->"<<y<<endl;
}
结果: