字符串操作

#include <iostream>

#include <string>

using namespace std;

int main() {

int n, m;

cin >> n >> m;

string s;

cin >> s;

for (int i = 0; i < m; ++i) {

int l, r;

char c1, c2;

cin >> l >> r;

cin >> c1 >> c2;

for (int j = l - 1; j < r; ++j) {

if (s[j] == c1) {

s[j] = c2;

}

}

}

cout << s <<endl;

return 0;

}外层的 for 循环 ,它控制着整个替换操作执行的次数,一共会循环 m 次,每一次循环代表一次对字符串中部分字符的替换操作,这里的 m 就是前面从输入获取到的那个控制替换次数的整数。在每次外层循环中:首先定义了两个整型变量 l 和 r,以及两个字符型变量 c1 和 c2。通过 cin >> l >> r; 从标准输入读取两个整数,这两个整数通常可以理解为是要操作的字符串区间的左右边界。接着通过 cin >> c1 >> c2; 读取两个字符, c1 代表要在指定区间内查找并替换的目标字符, c2 代表用来替换 c1 的字符。内层的 for 循环 for (int j = l - 1; j < r; ++j):用于遍历从 l - 1 到 r - 1 这个区间内的字符串字符(索引范围是左闭右开区间),在循环内部通过 if (s[j] == c1) 条件判断,如果当前字符串中的字符等于要查找替换的目标字符 c1,就执行 s[j] = c2; 将其替换为 c2。最后输出

全部评论

相关推荐

喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务