农夫过河(带羊,菜,狼,过河) C语言程序设计流程图0

shadowylpw2013.05.15浏览830次分享举报

#include

#include

#include

#define MAX_STEP 20

//index: 0 - 狼,1-羊,2-菜,3-农夫,value:0-本岸,1-对岸

int a[MAX_STEP][4];

int b[MAX_STEP];

char *name[] =

{

"空手",

"带狼",

"带羊",

"带菜"

};

void search(int iStep)

{

int i;

if (a[iStep][0] + a[iStep][1] + a[iStep][2] + a[iStep][3] == 4)

{

for (i = 0; i < iStep; i++)

{

if (a[i][3] == 0)

{

printf("%s到对岸\n", name[b[i] + 1]);

}

else

{

printf("%s回本岸\n", name[b[i] + 1]);

}

}

printf("\n");

return;

}

for (i = 0; i < iStep; i++)

{

if (memcmp(a[i], a[iStep], sizeof(a[i])) == 0)

{

return;

}

}

if (a[iStep][1] != a[iStep][3] && (a[iStep][2] == a[iStep][1] || a[iStep][0] == a[iStep][1]))

{

return;

}

for (i = -1; i <= 2; i++)

{

b[iStep] = i;

memcpy(a[iStep + 1], a[iStep], sizeof(a[iStep + 1]));

a[iStep + 1][3] = 1 - a[iStep + 1][3];

if (i == -1)

{

search(iStep + 1);

}

else if (a[iStep][i] == a[iStep][3])

{

a[iStep + 1][i] = a[iStep + 1][3];

search(iStep + 1);

}

}

}

int main()

{

search(0);

return 0;

} 这是程序,画出流程图!

人狼羊菜过河matlab,农夫过河(带羊,菜,狼,过河) C语言程序设计流程图相关推荐

  1. 农夫狼羊白菜过河C语言程序,农夫过河(带羊,菜,狼,过河) C语言程序设计流程图...

    #include #include #include #define MAX_STEP 20 //index: 0 - 狼,1-羊,2-菜,3-农夫,value:0-本岸,1-对岸 int a[MAX ...

  2. java农夫过河问题_农夫过河问题——C语言程序设计(转)

    一个农夫带着一只狼.一只羊和一棵白菜,身处河的南岸.他要把这些东西全部运到北岸.问题是他面前只有一条小船,船小到 只能容下他和一件物品,另外只有农夫能撑船.另外,因为狼能吃羊,而羊爱吃白菜,所以农夫不 ...

  3. 农夫 狼 羊 白菜 java,一个农夫带着一头狼,一头羊和白菜过桥,一次只能带一样过桥,狼会吃羊,年会吃白菜,请问农夫该怎么办?...

    一个农夫带着一头狼,一头羊和白菜过桥,一次只能带一样过桥,狼会吃羊,年会吃白菜,请问农夫该怎么办?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让 ...

  4. java数据结构 农夫过河,数据结构农夫过河

    农夫过河问题(C++编写)_电子/电路_工程科技_专业资料.1.问题描述从前,一... 农夫过河的安全步骤: NO1:农夫,狼,羊,白菜都在河的左岸 NO2:农夫带羊到... 南阳理工学院 " ...

  5. 农夫过河+java,农夫过河问题(java版)

    packagecom.my.courseDesign;public classCourseDesign {/** 1. 首先分为A岸,和B岸,A岸用0来表示,B岸用1来表示,在船上用1来表示,不再船上 ...

  6. java农夫过河_农夫过河问题(java版)

    packagecom.my.courseDesign;public classCourseDesign {/** 1. 首先分为A岸,和B岸,A岸用0来表示,B岸用1来表示,在船上用1来表示,不再船上 ...

  7. 过河问题(牛虎过河、商人仆人过河、农夫妖怪过河、传教士野人过河)(第2届第2题)

    ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 最新链接 题目要求 问题描述:三只牛三只虎过河,船最多只能容纳两只动物,且船在往返途中不能为空. ...

  8. 小船过河 matlab,小船过河matlab实现.doc_蚂蚁文库

    小船过河 matlab实现.doc (一)问题分析一只小船要渡过一条宽为d的河流,目标是起点A正对着的另一岸B点.已知河水的流速v1与船在静水中的速度v2之比为k.(1)建立小船的航线模型,并求其解析 ...

  9. 信息学奥赛一本通 1314:【例3.6】过河卒(Noip2002) | 1921:【02NOIP普及组】过河卒 | 洛谷 P1002 [NOIP2002 普及组] 过河卒

    [题目链接] ybt 1314:[例3.6]过河卒(Noip2002) ybt 1921:[02NOIP普及组]过河卒 洛谷 P1002 [NOIP2002 普及组] 过河卒 [题目考点] 1. 坐标 ...

最新文章

  1. 经典网页设计:20个与众不同的 Flash 网站设计作品
  2. ES6之Promise
  3. sdut-3332 数据结构实验之栈与队列五:下一较大值(一)
  4. 【BZOJ-3196】二逼平衡树 线段树 + Splay (线段树套平衡树)
  5. 计算机主机内部结构连接,电脑主机内部结构介绍
  6. 【转载 译自MarketWatch 】 华尔街疯人日记 (二十五)
  7. OpenCV与图像处理学习十三——Harris角点检测(含代码)
  8. jQuery版Ajax的使用
  9. MySQL错误:The user specified as a definer (XXX@XXX) does not exist
  10. ORACLE RMAN增量备份经典理解
  11. 非名校毕业,如何在六天面试六家顶尖科技公司,并拿到全部Offer?
  12. frame越过另一个frame_Python3.6实现一个简单的文本编辑器
  13. 求助,我在Kell官网上下载的固件库,双击运行后显示错误:Zip integrity check failed.,该怎么解决?
  14. phpcms开发微信小程序api
  15. 智能客服问题相似度算法设计——第三届魔镜杯大赛第12名解决方案
  16. 元气骑士超级科学计算机有什么用,元气骑士超级科学计算机攻略 天赋及获取方式汇总...
  17. 解决Win10能登陆QQ却无法打开网页问题
  18. 雍正杀“舅”:握着领导把柄,隆科多必须死?
  19. MT6755/HelioP10处理器性能,MT6755芯片规格资料
  20. 美苏太空竞赛历年卫星火箭发射以及历史事件介绍

热门文章

  1. 图像分割将label和得到的mask画入原图
  2. supervisor ERROR (spawn error)
  3. 极客日报:百度网盘青春版将不限速;Bing在中国内地暂停“搜索自动建议”功能30天;新款iPhone SE将支持5G
  4. telnet端口不通怎么解决(单边不通的方法建议)
  5. Python海象运算符的使用
  6. 从面试中吸取经验及了解知识(1)
  7. 《增长黑客:创业公司的用户与收入增长秘籍》----你的技术真的可以赚钱
  8. 30 分钟集成融云 IM 即时通讯
  9. n*n/九宫格数独解法及随机生成java实现,独家
  10. OpenCV C++案例实战八《基于Hu矩轮廓匹配》