#include <stdlib.h> #include <stdio.h> void hanoi(int i , char A , char B , char C) { if(i == 1) { printf("%c to %c\n" , A , C); return ; } hanoi(i-1 , A , C , B); //C當暫存 , A先移向B , i-1個 hanoi(1 , A , B ,C); // A剩一個 , 移向 C , B當暫存 hanoi(i-1 , B , A , C); //存在B的i-1移向C ,A當暫存 } int main() { int n; printf("please input n\n"); scanf("%d", &n); hanoi(n, 'A', 'B', 'C'); return 0; }
沒有留言:
張貼留言