求助:谁给解释一下汗诺塔的递归过程,结合程序,谢谢拉
原理我是晓得,就是程序写的懵懂,你们有这情况没?
----------------解决方案--------------------------------------------------------
...
#include<stdio.h> int num;
int l1=1,l2=2,l3=3;
void han(int num,int l1,int l2,int l3)
{
if(num==1)
printf("%d -> %d\n",l1,l3);
else
{
han(num-1,l1,l3,l2);
printf("%d -> %d\n",l1,l3);
han(num-1,l2,l1,l3);
}
}
int main(){
printf("Please input the number:");
scanf("%d",&num);
han(num,l1,l2,l3);
return 0;
}
----------------解决方案--------------------------------------------------------