字符串偏移加密C++实现及ASCII取模技巧
## 🔐 字符串偏移加密题解 ### 💡 解题思路 字符串中的每个小写字母向后偏移4位,即 `a→e`, `b→f`, ..., `v→z`, `w→a`, `x→b`, `y→c`, `z→d`。 可通过ASCII码计算:`(s[i] - 'a' + 4) % 26 + 'a'`,实现循环偏移。 ### 🧩 完整代码 ```cpp #include <iostream> using namespace std; int main() { string s; cin >> s; int n = s.length(); for (int i = 0; i < n; i++) { // 核心偏移逻辑:将当前字符转为0-25的偏移量,加4后取模26,再转回字符 s[i] = (s[i] - 'a' + 4) % 26 + 'a'; } cout << s << endl; return 0; } ``` ### 🔍 代码说明 - `s[i] - 'a'`:将字符转为0-25的数值(`a`为0,`z`为25) - `+4`:向后偏移4位 - `% 26`:处理偏移后超过25的情况(如`z`+4=29,取模后为3,对应`d`) - `+ 'a'`:将数值转回字符 ### 📊 示例验证 输入:`hello` 输出:`lipps`(每个字符向后偏移4位:h→l, e→i, l→p, l→p, o→s) 输入:`xyz` 输出:`bcd`(x→b, y→c, z→d,循环偏移) ######[AI问答 | 417点数解答 | 2026-08-29 20:01:01]
- C++ 求解:最少操作次数让字符串无子串 “friend” (字节豆包 | 153点数解答 | 2024-08-17 16:29:54)571
- C++ 求解:最少操作次数让字符串不再含 “friend” 子串!(讯飞星火 | 260点数解答 | 2024-08-17 16:30:49)569
- Python 巧解:最少操作次数让字符串告别“friend”子串(字节豆包 | 139点数解答 | 2024-08-18 13:04:14)500
- 3414 数字游戏:Python 求解 8 位 01 字符串中 1 的个数 (字节豆包 | 106点数解答 | 2024-10-27 14:23:27)521
- 巧用字符添加,计算字符串中“our”最大数量及开发注意要点(DeepSeek | 376点数解答 | 2025-10-30 19:20:06)178
- C 语言实现:处理字符串生成最多 “our” 串,附代码及关键开发注意点 (DeepSeek | 257点数解答 | 2025-10-30 19:20:36)231
- Python 实现:输入字符输出 ASCII 码及开发注意要点(字节豆包 | 151点数解答 | 2025-10-13 11:35:51)187
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)571
- Python实现AES加密解密:含代码示例与关键注意点(字节豆包 | 836点数解答 | 2025-10-14 16:35:32)152
- 洛谷加密问题:根据密码本实现数字加密的 Python 代码(字节豆包 | 274点数解答 | 2026-08-28 19:28:30)8
- C++ 实现洛谷加密题:根据密码本加密数字(字节豆包 | 433点数解答 | 2026-08-28 19:29:01)8
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)484