编写一个实现串的置换操作Replace(&S, T, V)的算法,用C语言编写
时间: 2024-10-23 17:15:25 浏览: 23
严版数据结构习题答案
在C语言中,你可以通过遍历字符串`S`,查找字符`T`,并将其替换为字符`V`来实现串的置换操作。这里是一个简单的线性时间复杂度的实现:
```c
#include <stdio.h>
#include <string.h>
void replace(char *S, char T, char V) {
int len_S = strlen(S); // 获取S的长度
for (int i = 0; i <= len_S - 1; i++) {
if (S[i] == T) { // 如果找到字符T
S[i] = V; // 替换为字符V
}
}
}
int main() {
char str[] = "Hello, World!";
char old_char = 'o';
char new_char = '*';
printf("Before replacement: %s\n", str);
replace(str, old_char, new_char);
printf("After replacement: %s\n", str);
return 0;
}
```
在这个例子中,`replace`函数接受三个参数:原始字符串`S`、需要替换的字符`T`和新的字符`V`。它会直接修改输入的`S`数组。
阅读全文