解题思路:
注意事项:
参考代码:
#include <stdio.h>
int i=1;
void hanoi(int n,char X,char Y,char Z){
if (n==1){
printf ("%2d. Move disk %d from %c to %c\n",i++,n,X,Z); // '.'后面有个空格别忘记了
}else{
hanoi(n-1,X,Z,Y);
printf ("%2d. Move disk %d from %c to %c\n",i++,n,X,Z);
hanoi(n-1,Y,X,Z);
}
}
int main (){
int n;
while (scanf ("%d",&n)!=EOF){
hanoi(n,'X','Y','Z');
printf ("\n");
i=1;
}
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:549 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:643 |
C语言训练-素数问题 (C语言代码)浏览:1065 |
C语言程序设计教程(第三版)课后习题9.8 (Java代码)浏览:1674 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:1555 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:541 |
【简单计算】 (C语言代码)浏览:642 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:350 |
模拟计算器 (C++代码)浏览:885 |
DNA (C语言代码)浏览:440 |