Hanoi汉诺塔问题

Posted yangbocsu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hanoi汉诺塔问题相关的知识,希望对你有一定的参考价值。

Hanoi汉诺塔问题

 

#include <stdio.h>

int main(int argc, char const *argv[])
{
	void hanoi(int n, char A, char B, char C); 
	int m;
	printf("请输入盘子得个数:"); 
	scanf("%d",&m);
	
	printf("移动得步骤:\\n");
	hanoi(m,'A', 'B', 'C'); 
    return 0;
}

void hanoi(int n, char A, char B, char C)
{
	void move(char x, char y);
	if(n == 1)
	{
		move(A,C);	
	} 
	else
	{
		hanoi(n-1,A, C, B);
		move(A,C);
		hanoi(n-1,B,A,C);
	}
}

void move(char x, char y)
{
	printf("%c --> %c\\n",x,y);
}

以上是关于Hanoi汉诺塔问题的主要内容,如果未能解决你的问题,请参考以下文章

C语言案例---汉诺(Hanoi)塔问题

列表形式的汉诺塔(Tower of Hanoi)Python语言实现

Bailian4147 汉诺塔问题(Hanoi)

汉诺塔(Hanoi)图解递归算法

汉诺塔-Hanoi

汉诺塔问题(Hanoi)