解题思路:
注意事项:
参考代码:#include<stdio.h>
#include<stdlib.h>
int count=0;
void move(char getone, char putone) {
count++;
printf("Move %d from %c to %c\n", count,getone, putone);
}
void hanoit(int n, char a, char b, char c) {
if(n == 1){
move(a, c);
} else {
hanoit(n - 1, a, c, b);
move(a, c);
hanoit(n - 1, b, a, c);
}
}
int main() {
int m;
scanf("%d", &m);
hanoit(m, '1', '2', '3');
system("pause");
return 0;
}
0.0分
1 人评分
gets函数前有scanf读取时候,会读取缓存回车导致出错!!!浏览:1094 |
C语言程序设计教程(第三版)课后习题6.7 (C语言代码)浏览:749 |
C二级辅导-统计字符 (C语言代码)浏览:729 |
printf基础练习2 (C语言代码)浏览:567 |
【亲和数】 (C语言代码)浏览:538 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:685 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:1456 |
1054题解浏览:460 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:467 |
C语言训练-自守数问题 (C语言代码)浏览:740 |