[C/C++]ハノータの実現

720 ワード

/*   1       A       A  C
      A    n-1     C  B,     A       A  C		
     B    n-1     A  C*/

#include 

void hannuota(int n, char A, char B, char C){
	if (1 == n){	//           	
		printf("    %d      %c    %c  
", n, A, C); } else { hannuota(n-1, A, C, B); // , n-1 , A C B printf(" %d %c %c
", n, A, C); // n A C hannuota(n-1, B, A, C); // , B n-1 C 。 } } int main(){ char ch1 = 'A'; char ch2 = 'B'; char ch3 = 'C'; int n; printf(" : "); scanf("%d", &n); hannuota(n, 'A', 'B', 'C'); return 0; }