weixin_48868582
2021-10-14 22:43
采纳率: 0%
浏览 979

解决C语言大作业问题

考虑在一个不小于80x60 单元的矩形空白作战区域,有红蓝两方兵力进行对抗。红蓝双方可分批在自己的一半区域部署兵力和进攻与防守的武器装备,按照一定作战规则进行对抗推演,最终部署合理的一获胜。编制相应的对抗推演和胜负判断程序,要求: 1) 首先考虑不同的武器装备的特性,利用结构数据类型,定义能描述不同武器装备单元特点的结构体(该结构体应包括如下定义:装备类型编号、装备名称、装备造价,最高生命值、最高行进速度[固定装备最高行进速度为0]、最大打击半径、最大装弹量、最高射速…,暂时不考虑装备的体积大小,认为每个装备在地图上仅占用一个单元的面积),并采用文件的方式,手工编辑可自由扩展的、不少于10 种类型武器装备(如坦克、飞机、自行火炮、导弹发射塔、单兵+冲锋枪、射击塔、栅栏等)的描述文件;另外,还需要定义和编辑不同装备之间两两对抗特性的交叉表(一种装备每单发战斗部对另一种装备的生命值造成的损害以及射击的精确度),反映装备之间的相克特性(如飞机对坦克的损伤大且射击精度高而单兵对坦克的损伤小、导弹对飞机的损伤大但对单兵的损伤小、栅栏可以阻挡单兵但不能阻挡坦克、所有单元都无法阻挡飞机等等)。 2) 由上述装备定义文件和相应的内部数据结构,编制人机交互程序,生成红蓝双方各自的兵力单元,并将其部署在矩形作战区域中(位置[必须在本方半场]、速度和方向、上场的时间等)。首先要求红蓝双方所部署的全部装备单元的总造价都必须小于某给定值。每个兵力单元需要有相应的随时间推演的动态属性(如现有生命值[生命值<0 表示该单元已被击毁而自动失效,即失去进攻和阻挡能力]、当前位置、速度[随生命值的减少,速度会下降]和行进方向、剩余弹药量等)。 3) 双方部署完毕以后,开始自动推演,推演基本规则(可以根据需要不断扩展)是:所有作战单元在没有遇到障碍的时候以部署的前进方向和当前速度前进,对进入自己射程内的最近的敌方目标自动进行攻击、剩余弹药量为0 则停止攻击、生命值为0 则自动失效。推演每进行一步,更新双方的兵力单元动态属性,并显示双方尚剩余兵力和其状态的报告,如果某一方的兵力单元首先被完全摧毁,则判对方胜利。通过多次推演,掌握和提高交互兵力部署的技巧。(2)用可视化的方式(图形或字符界面均可)取代上述的推演报告,将兵力推演的过程用更直观的方式展示出来;这时可考虑加入不同作战单元的大小区别和有天然障碍的非空白作战区域等因素。(3)针对(1)中描述的基本推演规则进行扩展,形成一定的作战战术,如 1) 使作战单元具有一定的智能,优先攻击对其自身危害大或对目标攻击效率高的目标,不攻击低效率目标以节省弹药;2) 受到猛烈攻击可自动改变行进方向;3) 根据攻击效率,自动寻找而躲避不同的敌方目标。采用函数指针的方式,由两位同学分别实现红方和蓝方的战术规则,实现兵力部署和战术对抗的综合演练。

  • 收藏

8条回答 默认 最新

  • yangDaChuie 2021-10-15 18:41

    还是好好学习吧这50给孩子买牛奶多补补

    24 打赏 评论
  • 接着奏乐吧 2021-10-15 16:37

    500块钱,或许有人会考虑帮你搞

    4 打赏 评论
  • 网友疯 2021-10-18 08:49

    这道题在游戏公司可能值个几十万吧

    2 打赏 评论
  • qq_44623314 2021-10-20 16:58

    print("hello world!")

    2 打赏 评论
  • dodogit 2021-10-20 16:42

    你想自己写作业但能力不足就把要求放低点,你想花钱请人做作业要求还高就把价钱开高点,总之不管干什么你心里得有数点

    1 打赏 评论
  • 有问必答小助手 2021-10-18 14:16

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,目前超出我们的服务范围,暂时无法为您解答。


    首次提问人员可免费体验一次有问必答服务。目前首次提问的问题服务范围为:编程语言、Java开发、python、数据库、前端开发 领域专业技术问题,为您提供问题的解决思路和指导。
    不提供源码代写、项目文档代写、论文代写、作业题目代写、安装包资源发送或安装、软件使用指导等服务。


    我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。

    打赏 评论
  • ACERROR 2021-10-18 14:42

    决策树 写一两个月吧

    打赏 评论
  • 正在长身体 2021-10-19 16:47

    50???

    打赏 评论

相关推荐 更多相似问题