拾光男孩 2016-11-26 03:46 采纳率: 0%
浏览 2948

奥特曼打怪兽的C++程序

奥特曼类的方法说明:
1.为每个属性设置get方法。
2.初始化方法将一次性初始化各个属性的取值。(等级从1开始,生命值为10,攻击力为1,经验值为0,拥有的钱数为0)
3.逃跑将损失1点生命值。
4.攻击将使对方受到自身攻击力大小的伤害,但对方也会采取反击,导致自己受到攻击。同时,如果对方所剩下的钱数为奇数,可抢夺对方一个钱财。另外,每攻击一次,可增加一点经验值。
5.受到攻击时,将受到攻击方攻击力值二分之一大小的伤害(即损失相应的生命值)。即:受到伤害点数=攻击方攻击力值/2。
6.如果赢得了战斗,将获得攻击方所有经验值。如果对方身上还有钱财,将全部抢得。
7.如果体力不支,可以用钱恢复一些生命值。每10个钱可恢复1点生命值。只要有足够的钱,可以一直恢复,直到达到生命值上限(等级值的10倍)。
8.如果达到升级条件,可以升级。每次升级需要有等级值的10倍的经验值。每次升级所使用的经验值都将被扣除,不可重复用于下次升级。升级将提高生命值上限至新等级值的10倍,生命值将恢复为满血状态,并提升战斗力为新等级值。

怪兽类的方法说明:
1.为每个属性设置get方法。
2.怪兽的初始属性值将随机生成(注意在程序开头包括此处用到两个库:和)。该方法已实现如下:
void setX(){
srand(time(NULL));
rank=rand()%10+1;
hp=(rand()%rank+1)*5;
exp=rand()%rank+1;
damage=rand()%rank+1;
money=rand()%rank+1;
}
3.受到攻击时,将受到攻击方攻击力值大小的伤害(即损失相应的生命值)。即:受到伤害点数=攻击方攻击力值。
同时,如果所剩下的钱数为奇数,会被攻击方抢走一个钱财。
受到攻击可以反击,将使对方受到自身攻击力二分之一大小的伤害。

完善main函数,用户输入不同的整数,可以选择相应的功能:打怪1,逃跑2,补血3,结束4.

上述要求怎么解决两个类的相互引用,具体就是互相攻击的时候,被攻击方的生命值怎么引用另一个类的攻击值来减生命值
哪位大神求解求解

  • 写回答

2条回答 默认 最新

  • dabocaiqq 2016-11-26 15:25
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘