酷代码 AI
菜单
服务商

C++实现士兵队伍武力值插入与删除操作

以下是使用 C++ 实现上述功能的代码: ```cpp #include <iostream> #include <vector> int main() { int n; std::cin >> n; std::vector<int> soldiers(n); for (int i = 0; i < n; ++i) { std::cin >> soldiers[i]; } int operation; std::cin >> operation; if (operation == 0) { int position, power; std::cin >> position >> power; // 在指定位置插入士兵的武力值 soldiers.insert(soldiers.begin() + position - 1, power); } else if (operation == 1) { int position; std::cin >> position; // 删除指定位置的士兵的武力值 soldiers.erase(soldiers.begin() + position - 1); } for (int i = 0; i < soldiers.size(); ++i) { if (i > 0) { std::cout << " "; } std::cout << soldiers[i]; } std::cout << std::endl; return 0; } ``` ### 代码解释 1. **输入士兵数量和武力值**: - 首先读取士兵的数量 `n`。 - 然后使用 `std::vector` 存储 `n` 名士兵的武力值。 2. **读取操作类型**: - 读取操作类型(0 表示插入,1 表示删除)。 3. **插入操作**: - 如果操作类型为 0,读取要插入的士兵编号和武力值。 - 使用 `insert` 函数在指定位置插入士兵的武力值。 4. **删除操作**: - 如果操作类型为 1,读取要删除的士兵编号。 - 使用 `erase` 函数删除指定位置的士兵的武力值。 5. **输出结果**: - 遍历 `std::vector`,输出每个士兵的武力值,中间用空格分隔。 ### 开发建议 - **边界检查**:在插入和删除操作时,应该检查输入的位置是否合法,避免越界访问。 - **错误处理**:可以添加对输入的合法性检查,例如输入的武力值是否在指定范围内。 - **代码复用**:可以将插入和删除操作封装成函数,提高代码的复用性。 ### 学习资源 - C++ 官方文档:https://en.cppreference.com/w/ - 《C++ Primer》:经典的 C++ 学习书籍,适合初学者和有一定基础的开发者。 ######[AI写代码神器 | 622点数解答 | 2026-05-29 16:56:40]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]