问题九十一:汉诺塔

2014-11-23 22:25:28 · 作者: · 浏览: 5


[plain]
#include

void hanol(int num, char a, char b, char c);

int main()
{
int num;
char a='A';
char b='B';
char c='C';

printf("please enter a number:");
scanf("%d", &num);

hanol(num, a, b, c);

return 0;
}
void hanol(int num, char a, char b, char c)
{
if(num==1)
{
printf("Move disk %d from %c to %c\n",num, a, c);
}
else
{
hanol(num-1, a, c, b);
printf("Move disk %d from %c to %c\n",num, a, c);
hanol(num-1, b, a, c);
}
}

#include

void hanol(int num, char a, char b, char c);

int main()
{
int num;
char a='A';
char b='B';
char c='C';

printf("please enter a number:");
scanf("%d", &num);

hanol(num, a, b, c);

return 0;
}
void hanol(int num, char a, char b, char c)
{
if(num==1)
{
printf("Move disk %d from %c to %c\n",num, a, c);
}
else
{
hanol(num-1, a, c, b);
printf("Move disk %d from %c to %c\n",num, a, c);
hanol(num-1, b, a, c);
}
}

\