1 #include"iostream"
2 using namespace std;
3 void 移动(int n,char 被移动,char 借助,char 目标)//汉诺塔
4 {
5 if (1 == n){
6 cout << "从" << 被移动 <<"移动一个盘子到" << 目标 << endl;
7 }
8 else{
9 移动(n - 1, 被移动, 目标, 借助);
10 移动(1, 被移动, 借助, 目标);
11 移动(n - 1, 借助, 被移动, 目标);
12 }
13 }
14 int main()
15 {
16 int 盘子数;
17 cout << "请输入有几个盘子:";
18 cin >> 盘子数;
19 移动(盘子数,'A','B','C');
20 system("pause");
21 }
1 #include"iostream"
2 void move(int n, char a, char b, char c){
3 if (1 == n)std::cout <<a << "-->" << c << "\n";
4 else{
5 move(n - 1, a, c, b);
6 move(1, a, b, c);
7 move(n - 1, b, a, c);
8 }
9 }
10 int main(){
11 move(3, 'A', 'B', 'C');
12 }