C++实现数字字符串字符后移及转换功能
### 🍭思路分析 本题要求对输入的数字字符串进行处理,将字符串中的每个字符向后移动一位,即把`1`改成`2`,`2`改成`3`,以此类推,`9`改成`0`。可以通过遍历字符串的每个字符,使用给定的公式 `s[i] = (s[i] - '0' + 1) % 10 + '0';` 来实现字符的转换。 ### 💻代码实现 ```cpp #include <iostream> #include <string> int main() { std::string s; // 读取输入的字符串 std::cin >> s; for (int i = 0; i < s.length(); ++i) { // 对每个字符进行转换 s[i] = (s[i] - '0' + 1) % 10 + '0'; } // 输出转换后的字符串 std::cout << s << std::endl; return 0; } ``` ### 📝代码解释 1. **输入读取**:使用 `std::cin` 读取输入的字符串。 2. **字符转换**:通过 `for` 循环遍历字符串的每个字符,使用 `(s[i] - '0' + 1) % 10 + '0'` 公式将字符转换为对应的新字符。 - `s[i] - '0'`:将字符转换为对应的数字。 - `+ 1`:将数字加 1。 - `% 10`:处理数字 9 转换为 0 的情况。 - `+ '0'`:将数字转换回字符。 3. **输出结果**:使用 `std::cout` 输出转换后的字符串。 ### ⚙️复杂度分析 - **时间复杂度**:$O(n)$,其中 $n$ 是字符串的长度,因为需要遍历字符串的每个字符。 - **空间复杂度**:$O(1)$,只使用了常数级的额外空间。 ######[AI写代码神器 | 484点数解答 | 2026-06-05 22:05:53]
- Python 实现简易密码设置系统:多种功能交互与安全要点揭秘(字节豆包 | 286点数解答 | 2025-03-28 10:43:21)399
- C语言实现多功能密码设置系统:含代码及安全注意要点(字节豆包 | 414点数解答 | 2025-03-28 10:43:55)383
- C 语言实现:超简单密码设置系统,含代码与注意要点!(字节豆包 | 519点数解答 | 2025-03-28 12:42:02)423
- C语言实现密码管理系统:含功能代码与安全注意事项(字节豆包 | 409点数解答 | 2025-04-05 18:09:56)368
- C语言实现多功能密码系统:初始化、确认、设置、显示、重置与退出(字节豆包 | 454点数解答 | 2025-04-05 18:48:42)371
- C语言实现密码管理系统:含初始化、确认、设置、显示、重置及退出功能(字节豆包 | 413点数解答 | 2025-04-06 15:37:16)317
- C 语言实现密码管理系统:含初始化、确认、设置、显示、重置及退出功能(字节豆包 | 403点数解答 | 2025-04-06 15:37:54)329
- C++实现读取数字并输出最小值的代码及解释(字节豆包 | 113点数解答 | 2026-03-20 19:32:56)44
- C++ 求解:最少操作次数让字符串无子串 “friend” (字节豆包 | 153点数解答 | 2024-08-17 16:29:54)505
- C++ 求解:最少操作次数让字符串不再含 “friend” 子串!(讯飞星火 | 260点数解答 | 2024-08-17 16:30:49)493
- Python 巧解:最少操作次数让字符串告别“friend”子串(字节豆包 | 139点数解答 | 2024-08-18 13:04:14)432
- 3414 数字游戏:Python 求解 8 位 01 字符串中 1 的个数 (字节豆包 | 106点数解答 | 2024-10-27 14:23:27)458