#include"stdio.h"
FILE * fp;//全局变量
int hanoimain()
{
int n = 0;
fp = fopen("d://hanoi.txt","w+"); //保存的文件地址
//input
printf("please input n:/n");
scanf("%d",&n);
fprintf(fp,"n = %d :/n",n);
//run
hanoi( 1 , 3 , n);
fclose( fp );
return 0;
}
int hanoi(int a,int b,int n)
{
int c = 6 - a -b;
if(n == 1)
{
move(a , b);
return 0;
}
else
{
hanoi(a , c , n-1);
hanoi(a , b , 1);
hanoi(c , b , n-1);
}
}
int move(int a,int b)
{
static int i = 1; //static 的使用
fprintf(fp,"Step %4d : move from %d to %d/n",i,a,b);//printf的格式%4d等
i++;
}
[C]my hanoi tower(递归练习)
最新推荐文章于 2021-05-19 16:31:03 发布