1:代码如下:
// 4.3.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; long lCount;//第几次移动 void move(int n,char x,char y,char z) //将n个圆盘从x针借助y针移到z针上 { if(n==1) cout << "Times:" << ++lCount << x << "->" << z << endl;//第一次移动,直接从x移动到z else { move(n-1,x,z,y);//把n-1个圆盘从x针借助z移到y cout << "Times:" << ++lCount << x << "->" << z <<endl; move(n-1,y,x,z);//把n-1个圆盘从y针借助x移到z } } void main() { int n ;//圆盘的个数 lCount=0; cout << "please input a number" << endl; cin >> n ; move(n,'a','b','c'); }
运行结果: