作者在 2010-12-17 12:46:54 发布以下内容
int k=0;
void move (char x,char y)
{
printf("%c-->%c",x,y);
k++;
if(k%5==0) printf("\n");
}
void hn(int n,char a,char b,char c)
{
if(n==1) move(a,c);
else
{
hn(n-1,a,c,b);
move(a,c);
hn(n-1,b,a,c);
}
}
#include<stdio.h>
void main()
{
int m;
printf("\ninput m:");
scanf("%d",&m);
hn(m,'A','B','C');
printf("\nk=%d",k);
}
void move (char x,char y)
{
printf("%c-->%c",x,y);
k++;
if(k%5==0) printf("\n");
}
void hn(int n,char a,char b,char c)
{
if(n==1) move(a,c);
else
{
hn(n-1,a,c,b);
move(a,c);
hn(n-1,b,a,c);
}
}
#include<stdio.h>
void main()
{
int m;
printf("\ninput m:");
scanf("%d",&m);
hn(m,'A','B','C');
printf("\nk=%d",k);
}