0
点赞
收藏
分享

微信扫一扫

C语言函数递归解决汉诺塔问题代码演示(带详细注释)

//1.汉诺塔问题

/*

   1个盘子:A->C 1

   2个盘子:A->B A->C B->C

   3个盘子:A->C A->B C->B A->C B->A B->C A->C

*/

//

// void move(char pos1,char pos2)

// {

//     printf(" %c->%c ",pos1,pos2);

// }

// void Hannuota(int n,char pos1,char pos2,char pos3)

// {

//    /*

//    n代表盘子个数

//    pos1:起始位置

//    pos2:中转位置

//    pos3:目的位置

//    */

//    if(n==1)

//    {

//        move(pos1,pos3);//一个盘子直接从起始位置移动到目的位置

//    }

//    else

//    {

//        Hannuota(n-1,pos1,pos3,pos2);

//        move(pos1,pos3);

//        Hannuota(n-1,pos2,pos1,pos3);

//    }

// }

// int main()

// {

//    Hannuota(1,'A','B','C');

//    printf("\n");

//    Hannuota(2,'A','B','C');

//    printf("\n");

//    Hannuota(3,'A','B','C');

//    printf("\n");

//

//     return 0;

// }

/*

举报

相关推荐

0 条评论