/*
* this file is the implementation of hanoi game
* file name: hanoi.c
* author: John Woods
* date: 2015/05/30
* statement: anyone can use this file for any purpose
*/
#include
#include
//function declarations
void hanoi(int n, char x, char y, char z);
void move(int n, char x, char y);
//program entrance
int main(void) {
char c;
int n = 0; //the height of hanoi
printf("please input the height of hanoi:");
while(!scanf("%d", &n)) {
while((c=getchar())!='\n' || c!=EOF);
printf("bad input! try again:");
}
hanoi(n, 'x', 'y', 'z');
return 0;
}
//function implementations
void hanoi(int n, char x, char y, char z) {
if(1 == n) {
move(1, x, z);
} else {
hanoi(n-1, x, z, y);
move(n, x, z);
hanoi(n-1, y, x, z);
}
}
void move(int n, char x, char z) {
printf("move disk %d from %c to %c\n", n, x ,z);
}
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。