字符串(基础)——字符串操作
任务描述
编写一个程序,对给定长度为 n 的只有小写字母的字符串 s 进行 m 次操作。每次操作将字符串中所有 c1 字符改成 c2 字符,输出操作完的字符串。
输入输出要求
输入: 第一行包含两个整数 n 和 m,第二行包含一个字符串 s,之后 m 行,每行两个字符 c1 和 c2。
输出: 输出一行一个字符串,即操作完成后的字符串。
代码实现
cpp
#include <stdio.h>
#include <string.h>
int main() {
int n, m;
scanf("%d %d", &n, &m);
char s[n + 1];
scanf("%s", s);
for (int i = 0; i < m; i++) {
int l, r;
char c1, c2;
scanf("%d %d %c %c", &l, &r, &c1, &c2);
for (int j = l - 1; j < r; j++) {
if (s[j] == c1) {
s[j] = c2;
}
}
}
printf("%s\n", s);
return 0;
}
总结
本次编程任务顺利完成,代码实现了对字符串的多次字符替换操作。通过这次练习,我加深了对字符串操作和循环控制的理解。同时,我也意识到在编写代码时,清晰的逻辑和良好的代码风格是非常重要的。
编写一个程序,对给定长度为 n 的只有小写字母的字符串 s 进行 m 次操作。每次操作将字符串中所有 c1 字符改成 c2 字符,输出操作完的字符串。
输入输出要求
输入: 第一行包含两个整数 n 和 m,第二行包含一个字符串 s,之后 m 行,每行两个字符 c1 和 c2。
输出: 输出一行一个字符串,即操作完成后的字符串。
代码实现
cpp
#include <stdio.h>
#include <string.h>
int main() {
int n, m;
scanf("%d %d", &n, &m);
char s[n + 1];
scanf("%s", s);
for (int i = 0; i < m; i++) {
int l, r;
char c1, c2;
scanf("%d %d %c %c", &l, &r, &c1, &c2);
for (int j = l - 1; j < r; j++) {
if (s[j] == c1) {
s[j] = c2;
}
}
}
printf("%s\n", s);
return 0;
}
总结
本次编程任务顺利完成,代码实现了对字符串的多次字符替换操作。通过这次练习,我加深了对字符串操作和循环控制的理解。同时,我也意识到在编写代码时,清晰的逻辑和良好的代码风格是非常重要的。
全部评论
相关推荐
01-05 20:07
西安电子科技大学 Java 点赞 评论 收藏
分享
01-04 20:58
淮北师范大学 Java 点赞 评论 收藏
分享

