Run ID:118425
提交时间:2025-04-30 20:45:12
#include <iostream> #include <string> using namespace std; int main() { /*cdd abbccdd 是你需要替换的字符串,就是你要去操作的一个字符串 cdbaefghijklmnopqrstuvwxyz 替换的规则 abcdefghijklnmopqrstuvwxyz 第三行的字母去用第二行的字母进行替换 a[0] -> 'a' -> 'c' 'a' -> 'c' 映射关系 'a' 标号 0 -> 数组的下标 a[0] = 'c' if(s[i] == 'a') s[i] -> a[0]*/ string s1, s2; cin >> s1 >> s2; for(int i = 0; i < s1.size(); ++i) { /*s1[i] = s2[s1[i] - 'a']; 只针对小写字母的 那么是不是还有大写字母 情况1:小写字母 情况2:大写字母*/ if(s1[i] >= 'a' && s1[i] <= 'z') s1[i] = s2[s1[i] - 'a']; else s1[i] = s2[s1[i] - 'A'] - 32; /*s1中原先的字母是大写的,那你替换后还是大写的 s1中原先的字母是小写的,那你替换后还是小写的 犯了什么错误呢? s1 大写->小写 s1 小写->小写*/ } cout << s1 << endl; return 0; }