酷代码 AI
菜单
服务商

小队准备制造能量光盾,制造结果和能量值的多少有关。输入能量值,输出能量光盾的制造结果。如果能量值大于200,输出2,表示可以获得2级能量光盾;如果能量值在101到200之间,输出1,表示可以获得1级能量光盾。请你修改这段代码,完成题目要求。 输入: 一个整数,表示能量值。 输出: 如果能量值大于200,输出2;如果能量值在101到200之间,输出1。#include <iostream> using namespace std; int main() { int x; cin >> x; // x表示能量值 if (x > 200) { cout << "2"; // 制造2级光盾 } if (x > 100) { cout << "1"; // 制造1级光盾 } return 0; }

```cpp #include <iostream> using namespace std; int main() { int x; cin >> x; // x表示能量值 if (x > 200) { cout << "2"; // 制造2级光盾 } else if (x >= 101 && x <= 200) { cout << "1"; // 制造1级光盾 } return 0; } ``` 代码解释 原代码存在逻辑问题,当能量值大于200时,会先输出`2`,接着因为也满足`x > 100`的条件,会再输出`1`,这不符合题目要求。修改后的代码使用`else if`语句,当能量值大于200时,直接输出`2`,若不满足该条件,再判断能量值是否在101到200之间,如果是则输出`1`,避免了重复输出的问题。 [2025-12-13 20:32:04 | AI问答 | 230点数解答]

相关提问
发财导航,免费问AI
实用工具查看更多