版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include #include #include void basic_interface()/根本界面system(clear);system(tput cup 5 20); printf(= =n );system(tput cup 6 20); printf(* *n);system(tput cup 7 20);prin tf(*A_A欢送使用商人过河游戏!a_a*n);system(tput cup 8 20);printf(*n);system(tput cup 9 20); printf(* 游戏说明 : *n);system(tput cup 10 20);printf(*
2、 三个商人带着三个随从和货物过河,船每次最 多只能载两个人,要求在过河期间,任一岸上商人的人数 *n);system(tput cup 11 20);printf(* 要大于或等于随从的人数,否那么随从会杀掉 商人抢走货物。*n);system(tput cup 12 20);printf(*n); system(tput cup 13 20); printf(* 游戏操作 :*n); system(tput cup 14 20 );printf(* 1依次输入过河的商人和随从人数;*n); system(tput cup 15 20); printf(* 2非法输入按键将重新开场。*n);
3、system(tput cup 16 20);printf(*n);system(tput cup 1720);printf(*n);system(tput cup 17 113);printf(*n);system(tput cup 1820);printf(*n);system(tput cup 18 113);printf(*n);system(tput cup 1920);printf(*n);system(tput cup 19 113);printf(*n);system(tput cup 2020);printf(*n);system(tput cup 20 113);print
4、f(*n);system(tput cup 2120);printf(*n);system(tput cup 21113);printf(*n);system(tput cup 2220);printf(*n);system(tput cup 22113);printf(*n);system(tput cup 2320);printf(*n);system(tput cup 23 113);printf(*n);system(tput cup 2420);printf(*n);system(tput cup 24 113);printf(*n);system(tput cup 2520);pr
5、intf(*n);system(tput cup 25113);printf(*n);system(tput cup 2620);printf(*n);system(tput cup 26 113);printf(*n);system(tput cup 2720);printf(*n);system(tput cup 27113);printf(*n);system(tput cup 28 20);printf(*n);char a6;/此岸char b6;/此岸void print_state(char a,char b)/ 打印渡河状态 int i,j,ab,aa,ba,bb;/ab 此岸
6、商人数 , aa 此岸随从数 bb 此岸商人数, ba, 此岸 随从数aa=ab=ba=bb=0; basic_interface() ; system(tput cup 18 40);printf( system(tput cup 19 40);printf( system(tput cup 18 73);printf( system(tput cup 19 73);printf(此岸商人数: n); 此岸随从数: n); 此岸商人数 : n);此岸随从数: n);for(i=0;i6;i+) 算此岸商人数和随从数if(ai=B)ab+;else if (ai=A)aa+;/system(t
7、put cup 18 53);printf(%dn,ab); / 输出此岸商 人数system(tput cup 19 53);printf(%dn,aa); / 输出此岸随 从数for(j=0;j6;j+) / 商人数和随从数if(bj=B)bb+;else if(bj=A)ba+;计算此岸system(tput cup 18 86);printf(%dn,bb); /输出此岸商人数system(tput cup 19 86); printf(%dn,ba); /输出此岸随从数if(ab=0 & aa=0 & bb=3 & ba=3) / 判断是否渡河成功system(tput cup 23
8、 40);printf( 恭喜你!你已成功帮助商人平安过河!按 任意键退出 .n);system(tput cup 30 0);getchar();system(clear);exit(0);void process()int i,j,go_b,go_a,back_b,back_a,ab,aa,bb,ba;/go_b, 过去商人数, go_a, 过去随从数, back_b, 回来商人 数, back_a, 回来随从数,char ch;Start:basic_interface();system(tput cup 20 40);printf( 请按任意键开场游戏按 Q 键退出 .); ch=ge
9、tchar();if(ch=Q|ch=q)system(clear);exit(0);for(i=0;i3;i+) ai=B;for(i=3;i6;i+) ai=A;for(i=0;i6;i+)bi=0; print_state(a,b); while(1) / 过去 for(ab=0,aa=0,i=0;i6;i+) / 计算此岸的 商人数和随从数 if(ai=B) ab+; else if(ai=A) aa+;system(tput cup 21 43); printf( 输入去此岸商人的人数 :n); system(tput cup 22 43);printf( 输入去此岸随从的人数 :n
10、); system(tput cup 21 65);scanf(%d,&go_b); / 输入去此岸的商人数 getchar();system(tput cup 22 65); scanf(%d,&go_a); / 输入去此岸的随从数 getchar();if(go_bab | go_aaa | go_a+go_b2) / 输入不合法system(tput cup 24 40);printf( 输入有误!按任意键重新开场.);getchar(); goto Start;for(i=1;i=go_b;i+) / 过河后两边的状态for(j=0;j6;j+)if(aj=B)aj=0;break;f
11、or(i=1;i=go_b;i+)for(j=0;j6;j+)if(bj=0)bj=B;break;for(i=1;i=go_a;i+)for(j=0;j6;j+)if(aj=A)aj=0;break;for(i=1;i=go_a;i+)for(j=0;j6;j+)if(bj=0)bj=A; break;for(aa=0,ab=0,i=0;i6;i+)计过河后 a 岸的商人数和随从数if(ai=A)aa+;else if(ai=B) ab+;for(ba=0,bb=0,i=0;i6;i+)/统/统计过河后 b 按的商人数和随从数 if(bi=A)ba+;else if(bi=B)bb+;if(
12、ab=3) |(bb=3) | (ab=aa) | (bb=ba) / 可以继续下一步的条件print_state(a,b);elsesystem(tput cup 24 40);printf( 商人被杀,按任意键重新开 场.n);system(tput cup 30 0); getchar();goto Start;/ 回来for(bb=0,ba=0,i=0;i6;i+) / 统计对岸的商人 数和随从数if(bi=B)bb+;else if(bi=A)ba+;system(tput cup 24 43); printf( 输入回此岸商人的人数 :n); system(tput cup 25
13、43);printf( 输入回此岸随从的人数 :n); system(tput cup 24 65); scanf(%d,&back_b);system(tput cup 25 65);scanf(%d,&back_a);if(back_bbb | back_aba | back_a+back_b2) / 判断输入是否合法system(tput cup 26 40);printf( 输入有误!按任意键重新开场.n);system(tput cup 30 0);getchar();goto Start;for(i=1;i=back_b;i+) / 返回后的 状态for(j=0;j6;j+)if(bj=B) bj=0; break;for(i=1;i=back_b;i+)for(j=0;j6;j+) if(aj=0) aj=B; break;for(i=1;i=back_a;i+)for(j=0;j6;j+) if(bj=A) bj=0; break; for(i=1;i=back_a;i+)for(j=0;j6;j+) if(aj=0) aj=A; break;计算返回后此计算返回后此岸for(ab=0,aa=0,i=0;i6;i+) / 岸的商人数和随从数if(ai=B)ab+;else if(ai=A)aa+;for(bb=0,ba=0,i=0;i6;i+) / 的商
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东梅州市人民医院招聘博士研究生备考题库及答案详解【新】
- 2025-2030智慧教育行业市场竞争格局与投资前景全面解析
- 2025-2030智慧教育机构运营管理品牌定位发展策略
- 临床护理指南试题及答案2026年
- 2026春季新疆克拉玛依市面向高校毕业生招聘事业单位人员120人备考题库附参考答案详解(完整版)
- 2026年甘肃省兰州大学党委教师工作部聘用制B岗招聘备考题库及参考答案详解一套
- 2026浙江台州市第一人民医院招聘编外合同制人员5人备考题库及答案详解一套
- 2025-2030智慧家居服务方案行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030智慧城市项目规划与执行效果评价及后续升级改造规划
- 2026江西赣西科技职业学院人才招聘备考题库含答案详解(b卷)
- 酒店英语面试问题及回答
- 装表接电实训 装表接电概述 课件
- 历史专业英语词汇
- 设计构成PPT完整全套教学课件
- 水文学课件ppt版 课件第七章
- 新教材选择性必修三有机化学基础全册课件
- GB/T 77-2007内六角平端紧定螺钉
- GB/T 28021-2011饰品有害元素的测定光谱法
- GA/T 992-2012停车库(场)出入口控制设备技术要求
- 医学统计学二项分布 课件
- 给排水计算书汇总-
评论
0/150
提交评论