#include <stdio.h>
void hanoi(int n, char A, char B, char C) {
if(n == 1) {
printf("Move sheet %d from %c to %c\n", n, A, C);
}
else {
hanoi(n-1, A, C, B);
printf("Move sheet %d from %c to %c\n", n, A, C);
hanoi(n-1, B, A, C);
}
}
int main() {
int n;
printf("请输入盘数:");
scanf("%d", &n);
hanoi(n, 'A', 'B', 'C');
return 0;
}
如果n=3时,第三步我就不理解了,也就是执行到hanoi(n,B,A,C)这步,这个时候为什么A=‘C’,B='A',C='B'了
求n=3时候每步骤的解析。
是执行到hanoi(n-1, B, A, C);这步,写错了