面向过程之骑士飞行棋
1.前言总序
还记得我们小时候完的那种飞行棋吗?你们都玩过吗?反正我是玩过,嘿嘿,那种飞行棋可以有多个用户参与,然后有一个塑料或者纸质的棋盘,上面有很多规则,然后有一个筛子,用户可以摇动出现数字,然后按照筛子上面的数字用户可以往前走,在走的过程中会遇到一些阻碍或者帮助,可以按照上面的说明去走,这就是飞行棋的玩法,看了整整一天的视频,现在用C#面向过程实现了简单的交互式骑士飞行棋。现在整理大概在做这个小项目中需要注意和重点的知识点的总结日记,下面是刚进入系统的飞行棋的图片,改图上面也已经显示了一些信息,可以仔细的看看这张图,下面分析思路:
- 实现原理
这个小项目用到了面向过程中的所有我们所学的知识的综合,如:方法,参数,结构,数组还有三种循环结构等等技术点,做这个项目也是为了巩固这些知识点。下面简单讲述一下飞行棋的规则:
(1) 用户输入玩家的姓名不能为空,并且用户两次输入的玩家姓名不能相同。
(2) 绘制地图,地图上面有很多管卡,比如:☆表示地雷,如果走在上面将会后退6格,◎表示幸运轮盘,可以有两种选择(1 和对方交换位置, 2 可以轰炸对方,是对方后退6格), ▲表示用户暂停一次,而对方可以连续走两次,而 卐表示时空隧道,用户可以前进10格。
(3) 当任何一个用户走动最后就算胜利(只要走到最后就算胜利)
(4) 本游戏中只考虑每个用户第一次遇到的各种情况的结果。
(5) 游戏开始提示第一个用户执行过程,当地一个用户完成后,提示第二个用户执行过程,这样会一直循环下去。
- 游戏知识点总结
(1) 通过这个游戏我们要掌握方法,任何冗余的代码我们都能够封装成方法,这样的话我们在需要使用这个方法的时候直接调用就可以了。
(2) 绘制地图,我们要考虑到能够用数组来实现,实现的方式有多种多样的,下面有这两种(int类型,string类型)。使其用户在执行走的过程的时候可以用鼠标来确定各个用户的动向。
(3) 产生随机数的方法
Random rand=new Random();
while(true)
{
int i=rand.Next(1,2);
Console.WriteLine(i);
Console.ReadKey();
}
注:产生一个m-n之间的随机数
Random rand=new Random();
int i=rand.Next(m,n+1);
- 总结
通过这个游戏使我更好的理解了面向过程的编程思想以及面向过程中的方法,数组,枚举和三种循环结构的使用,所谓干任何事和盖房子一模一样,如果地基不好的话,几年后这个房子可能就会坍塌,所以,我们一定要学好基础。
源码太多了,这里就不写出来,如果需要的话可以联系我!!
转载于:https://www.cnblogs.com/hanyinglong/archive/2012/03/22/2412464.html
面向过程之骑士飞行棋相关推荐
- 【黑马程序员】9. 骑士飞行棋
---------------------- ASP.Net+Android+IOS开发..Net培训.期待与您交流! ---------------------- 本项目使用的是面向过程的程序设计思 ...
- 骑士飞行棋 c语言代码,骑士飞行棋源代码.doc
骑士飞行棋源代码 骑士飞行棋源代码using System;using System.Collections.Generic;using System.Linq;using System.Text; ...
- java飞行棋项目_java小项目 类与 对象 骑士飞行棋代码
/**主体方法 import java.util.Random; import java.util.Scanner; public class Game { public Map map; Scann ...
- 北大青鸟Accp5.0 S1 Java项目——骑士飞行棋
经过一个多月的学习终于学完了使用Java语言理解程序逻辑课程,花了一周的时间写完了项目案例--骑士飞行棋.为了方便大家的交流学习,先将代码上传,欢迎大家批评指正.注:我把Game类的play方法中'开 ...
- 骑士飞行棋 C#代码详解
最近看见一个骑士飞行棋的小游戏代码,感觉这个代码中将大多数C#的基础知识都运用到了,是一个新手检验学习成果的有效方法,特此将这个代码整理一遍.这是一个控制台程序.这是代码下载地址,代码中的注释非常详细 ...
- 看视频学编程之骑士飞行棋—自己做(单机版)
------- Windows Phone 7手机开发..Net培训.期待与您交流! ------- 这里就不多做说明了,很简单的一个小游戏-飞行棋,控制台输出的有点丑,不过逻辑才是最重要的 有兴趣的 ...
- C语言编写小游戏——骑士飞行棋
/* Author Mr.Long* Date 2015年12月2日17:33:17 */ #include<iostream> #include<string> #inclu ...
- 黑马程序员 骑士飞行棋
------- Windows Phone 7手机开发..Net培训.期待与您交流! ------- 游戏说明: 有一个100格的棋盘(当然也可以自定义200甚至300格),玩家A和玩家B互掷骰子,根 ...
- 黑马程序员 骑士飞行棋源码
---------------------- Windows Phone 7手机开发..Net培训.期待与您交流! ---------------------- using System; using ...
最新文章
- 在后台代码中引入XAML的方法
- 【MySQL】MySQL的事务
- 计算机组成原理:输入输出系统
- java 俄语 工作_工作俄语怎么说
- 一、策略模式(Strategy Pattern)
- 一步一步学Vue(四)
- java 替换 rn_RN热更新之Android篇
- 张小龙「跳一跳」都玩到 6000 多分,是时候掌握微信小游戏高级开发了
- PT100温度采集电路设计
- 大数据平台的SQL查询引擎有哪些—SparkSQL
- 接口文档编辑工具+接口文档编写
- 计算机复制方法有,电脑复制粘贴怎么用(6种电脑复制粘贴方法)
- A1.0.2 离线瓦片用ol3显示多功能地图
- Python:实现first come first served先到先得算法(附完整源码)
- 将本机文件复制到安装的虚拟机系统中的两种方法
- java 怎么判断1_1.0_1.00是同一个数_编程练习-判断是否为易混淆数
- 森图CAV全尺寸检测服务 ATOS三维扫描测量仪精度达0.0025mm
- 用MFC创建个性的对话框
- WPF 导入google思源字体(.otf)格式字体
- 思科设备静态路由配置
热门文章
- 制度化规范化标准化精细化_精细化管理ORTCC模型在管理中的运用(下)
- 8 分钟了解 Kubernetes
- python扩展库丰富吗_python扩展库
- 红帽子linux开启telnet,RedHat linux 9下配置telnet服务 | 技术部落
- 2.3.1 spring属性注入-注解注入-半注解方式-前序
- getcwd和pwd为什么不一样_企业职工,公务员为什么缴纳的养老保险不一样呢?
- php 表单错误弹窗,PHP表单错误
- 安卓机更新系统会卡吗_iOS13.3系统值得更新吗?信号怎么样?续航改善了没有?...
- c语言map函数k v都是int,Go语言sync.Map(在并发环境中使用的map)
- linux中sed的基本用法,linux sed用法