设为首页 加入收藏

TOP

C语言实现农夫过河代码及解析(二)
2018-11-20 22:09:58 】 浏览:1277
Tags:语言 实现 农夫 过河 代码 解析
nbsp;       if(a[i][3] == 0)
                printf("farmer  ");
            if(a[i][0] && a[i][1] && a[i][2] && a[i][3])
                printf("none");
            printf("            ");
            printf("west: ");
            if(a[i][0] == 1)
                printf("wolf  ");
            if(a[i][1] == 1)
                printf("goat  ");
            if(a[i][2] == 1)
                printf("cabbage  ");
            if(a[i][3] == 1)
                printf("farmer  ");
            if(!(a[i][0] || a[i][1] || a[i][2] || a[i][3]))
                printf("none");
            printf("\n\n\n");
            if(i<Step)
                printf("                      the %d time\n",i+1);
            if(i>0 && i<Step)
            {
                if(a[i][3] == 0)  /*农夫在本岸*/
                {
                    printf("                  ----->  farmer ");
                    printf("%s\n", name[b[i] + 1]);
                }
                else      /*农夫在对岸*/
                {
                    printf("                  <-----  farmer ");
                    printf("%s\n", name[b[i] + 1]);
                }
            }
        }
        printf("\n\n\n\n");
        return 0;
    }
    for(i=0; i<Step; i++)
    {
        if(memcmp(a[i],a[Step],16) == 0)  /*若该步与以前步骤相同,取消操作*/
        {
            return 0;
        }
    }
    /*若羊和农夫不在一块而狼和羊或者羊和白菜在一块,则取消操作*/
    if(a[Step][1]!=a[Step][3] && (a[Step][2] == a[Step][1] || a[Step][0] == a[Step][1]))
    {
        return 0;
    }
    /*递归,从带第一种动物开始依次向下循环,同时限定递归的界限*/
    for(i=-1; i<
首页 上一页 1 2 3 4 下一页 尾页 2/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python与C/C++混合编程的应用 下一篇C语言矩阵转置代码及解析

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目