编号及代码:
/*
*Copyright(c)2014,烟台大学计算机与控制工程学院
*All rights reserved
*作者:范星月
*完成日期:2014年11月18日
*版本号:v1.0
*
*问题描述:汉诺塔游戏
*问题输入:输入n
*问题输出:输出过程
*/
#include <iostream>
using namespace std;
void move (int n,char a,char b,char c);
int main()
{
int n;
cout <<"请输入的值:"<<endl;
cin >>n;
move ( n, 'a','b',' c') ;
return 0;
}
void move (int n,char a,char b,char c)
{
if (n==1)
cout <<"把"<<n<<"号盘子由"<<a<<"-->"<<c<<endl ;
else
{
move (n-1,a,c,b);//表示(n-1)个盘子由a经过c到b
cout <<"把"<<n<<"号盘子由"<<a<<"-->"<<c<<endl;
move (n-1,b,a,c);//表示个盘子由a经过b到c
}
}
运行结果:
学习总结:还不是太了解
学习心得:还好吧