标题:关于汉诺塔的问题,请明白人指点一下
只看楼主
gaoxin8515
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-4-15
 问题点数:0 回复次数:2 
关于汉诺塔的问题,请明白人指点一下
#include<stdio.h>
void main()
{
 void hanoi(int n, char one,char two,char three);
 int m;
 printf("input the number of diskes");
 scanf("%d",&m);
 printf("The step to moving %d diskes:\n",m);
 hanoi(m,'A','B','C');
}

void hanoi(int n,char one,char two,char three)
{
 void move(char x,char y);
   if(n==1)
  move(one,three);
   else
   {
    hanoi(n-1,one,three,two);
    move(one,three);
    hanoi(n-1,two,one,three);
   }
}

void move(char x,char y)
{
  printf("%c------>%c\n",x,y);
}

为什么当输入9时不是从A盘子开始移的???
搜索更多相关主题的帖子: 汉诺塔 明白人 
2008-11-29 22:41
lijiecsu
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2008-10-17
得分:0 
不可能啊,输入9会输出好多次移盘操作,你确定你看到的那一次就是程序的第一次输出吗?
2008-11-29 22:56
kingiswei
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2008-1-19
得分:0 
屏幕的问题,你换成文本输出看看,就是从A开始
2008-11-30 12:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-246957-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.440780 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved