26 · 跃火林中
先读关卡目标,观察地图,再运用本课知识。
扣哒世界 · 计算机科学2 · C++ · 第26–30关
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
学习路线:读目标 → 看图解 → 写代码 → 运行检查
有时候,一个条件还不够。我们需要在做出一个决定后,再做另一个决定。
嵌套选择就是把一个 if 语句放在另一个 if 语句的里面。
在 C++ 中,我们通过大括号 {} 来控制层级。
⚠️ 注意缩进和大括号的匹配!
像剥洋葱一样,一层一层往里写代码
游戏中的物品有一个 pos 属性,它本身又包含 x 和 y。
我们可以通过点号 . 来访问它们:
item.pos —— 物品的位置信息item.pos.x —— 物品的横坐标item.pos.y —— 物品的纵坐标任务: 站在中间。如果有敌人,根据距离决定是攻击还是防守;如果没有敌人,回到中间。
这一关需要三层判断,才能完美使用大招 cleave。
Cleave 必杀技需要精密的时机!
这是一个综合挑战!我们需要结合嵌套 If 和 If-Else。
扣哒世界 · 计算机科学2 · C++ · 第26–30关
有时候,一个条件还不够。我们需要在做出一个决定后,再做另一个决定。
多分支从上到下检查,命中一个分支后跳过后面的分支。条件顺序会影响结果。
hero.attack(enemy);
游戏中的物品有一个 pos 属性,它本身又包含 x 和 y。
auto item = hero.findNearestItem();
任务: 站在中间。如果有敌人,根据距离决定是攻击还是防守;如果没有敌人,回到中间。
auto enemy = hero.findNearestEnemy();
这一关需要三层判断,才能完美使用大招 cleave。
float dist = hero.distanceTo(enemy);
这是一个综合挑战!我们需要结合嵌套 If 和 If-Else。
float dist = hero.distanceTo(enemy);
本节课关卡:26. 跃火林中;27. 以静制动;28. Agrippa守卫战;29. 概念挑战. 危险的树;30. 组合挑战. 最后的守护者