注册 登录
编程论坛 C语言论坛

求解汉诺塔问题

qq1528344561 发布于 2019-08-15 15:18, 1158 次点击
程序代码:
#include<stdio.h>
void h(int n,char a,char b,char c);
int main()
{
    char a,b,c;
    int n;
    scanf("%d %c %c %c",&n,&a,&b,&c);
    //printf("%d %c %c %c",n,a,b,c);
    h(n,a,b,c);
}
void h(int n,char a,char b,char c)
{
    if(n==1)
    {
        printf("%c->%d->%c\n",a,n,b);
        return ;
    }
    else
    {
        h(n-1,a,c,b);
        printf("%c->%d->%c\n",a,n,c);
        h(n-1,c,b,a);
        return ;
    }
   
   
}

样例过了,但是不知道为什么答案WA
http://ybt.
2 回复
#2
qq15283445612019-08-15 15:21
DD,HELP!
#3
rjsp2019-08-15 16:17

printf("%c->%d->%c\n",a,n,c);
改为
printf("%c->%d->%c\n",a,n,b);

另外,无意义的顶贴是不道德的
1